gristlabs_grist-core/README.md
Paul Fitzpatrick cff02cd3d0 (core) simplify starting grist-core and add some more usage information
Summary:
I worked through the README for grist-core, and the instructions
for setting it up and starting it.  This change includes a small
simplification, and a few more instructions for getting started.

Test Plan: manual

Reviewers: dsagal

Reviewed By: dsagal

Differential Revision: https://phab.getgrist.com/D2619
2020-09-24 14:10:58 -04:00

69 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Grist
Grist is a modern relational spreadsheet. It combine the flexibility of a spreadsheet with the
robustness of a database to organize your data and make you more productive.
> :warning: This repository is in a pre-release state. Its release will be announced when it has
all the planned components, and a solid independent build and test set-up. Currently, stand-alone
server functionality is present. Release of our web client is planned, along with an extensive
test suite.
This repository, [grist-core](https://github.com/gristlabs/grist-core), is maintained by Grist
Labs. Our flagship product, available at https://www.getgrist.com, is built from the code you see
here, combined with business-specific software designed to scale it to many users, handle billing,
etc.
## Why Open Source?
By opening its source code and offering an [OSI](https://opensource.org/)-approved free license,
Grist benefits its users:
- **Open Source Community.** An active community is the main draw of open-source projects. Anyone
can examine source code, and contribute bug fixes or even new features. This is a big deal for a
general-purpose spreadsheet-like product, where there is a long tail of features vital to
someone somewhere.
- **Increased Trust.** Because anyone can examine the source code, “security by obscurity” is not
an option. Vulnerabilities in the code can be found by others and reported before they can cause
damage.
- **Independence.** The published source code—and the product built from it—are available to you
regardless of the fortunes of the Grist Labs business. Whatever happens to us, this repo or its
forks can live on, so that you can continue to work on your data in Grist.
- **Price Flexibility.** You can build Grist from source and use it for yourself all you want
without paying us a cent. While you cant go wrong with our fully set-up and supported online
service, some organizations may choose the do-it-yourself route and pay for their own server and
maintenance, rather than a per-user price. DIY users are often the ones to develop new features,
and can contribute them back to benefit all users of Grist.
- **Extensibility.** For developers, having the source open makes it easier to build extensions (such as the
experimental [Custom Widget](https://support.getgrist.com/widget-custom/)). You can more easily
include Grist in your pipeline. And if a feature is missing, you can just take the source code and
build on top of it!
## How do I start?
For building from source, you can start with this:
npm install
npm run build:prod
npm run install:python
npm start
# unauthenticated grist api available at http://localhost:8484/api/
Then you can use the Grist API locally to work on a document. Currently you need
to "upload" a document to work with it. This makes a copy of it that the server
controls - you can find it in the `data` directory:
curl -F 'upload=@YourDocument.grist' http://localhost:8484/api/docs
# Note the document ID that is returned.
The [Data-Tables endpoints](https://support.getgrist.com/api/#tag/Data-Tables) are
particularly useful.
For using hosted Grist, just head on over to <https://www.getgrist.com>.
# License
This repository, `grist-core`, is released under the [Apache License, Version
2.0](http://www.apache.org/licenses/LICENSE-2.0), which is an
[OSI](https://opensource.org/)-approved free software license. See LICENSE.txt and NOTICE.txt for
more information.