2023-12-08 19:27:00 +01:00
|
|
|
## About
|
|
|
|
|
2024-04-08 23:33:54 +02:00
|
|
|
Twenty helps you plan your open source projects with a standalone
|
|
|
|
web application that's designed to run on localhost or within your
|
|
|
|
local network.
|
2023-12-08 19:27:00 +01:00
|
|
|
|
2023-12-22 22:23:10 +01:00
|
|
|
## Features
|
|
|
|
|
2024-01-13 22:16:08 +01:00
|
|
|
* Provides a command-line utility to start / stop a web server.
|
|
|
|
* Connect / disconnect a project from the command line.
|
2024-04-08 23:33:54 +02:00
|
|
|
* Designed to work offline.
|
|
|
|
* Lightweight stack.
|
2024-01-13 22:16:08 +01:00
|
|
|
* Easy to install, easy to use.
|
2023-12-22 22:23:10 +01:00
|
|
|
|
2024-01-14 22:48:27 +01:00
|
|
|
## Design
|
|
|
|
|
2024-03-27 22:18:58 +01:00
|
|
|
* The server is powered by [rack](https://github.com/rack/rack) and [puma](https://github.com/puma/puma):
|
2024-03-11 18:45:11 +01:00
|
|
|
- Accepts GraphQL requests at `/graphql`.
|
|
|
|
- Serves client (HTML, JS, CSS).
|
2024-03-28 06:22:08 +01:00
|
|
|
- Dependencies: Sequel, SQLite3, ruby-graphql.
|
2024-01-14 22:48:27 +01:00
|
|
|
* The client is a statically compiled [nanoc](https://github.com/nanoc/nanoc) website:
|
2024-03-11 18:45:11 +01:00
|
|
|
- Dependencies: webpack, typescript, react.
|
2024-01-14 22:48:27 +01:00
|
|
|
* The CLI controls the web server:
|
2024-03-11 18:45:11 +01:00
|
|
|
- Start / stop web server.
|
|
|
|
- Run database migrations.
|
|
|
|
- Run developer console.
|
2024-01-14 22:48:27 +01:00
|
|
|
* Each component (server, client, cli) are separate packages
|
|
|
|
in a monorepo.
|
|
|
|
* Easy to distribute as a RubyGem.
|
|
|
|
|
2023-12-08 19:27:00 +01:00
|
|
|
## Usage
|
|
|
|
|
2024-03-11 18:45:11 +01:00
|
|
|
**CLI**
|
2024-02-09 23:56:20 +01:00
|
|
|
|
2024-03-11 18:45:11 +01:00
|
|
|
Usage: twenty COMMAND [OPTIONS]
|
2023-12-08 19:27:00 +01:00
|
|
|
|
|
|
|
Commands:
|
|
|
|
up Start the twenty web server.
|
|
|
|
down Stop the twenty web server.
|
|
|
|
connect Connect a project to twenty.
|
|
|
|
disconnect Disconnect a project from twenty.
|
2023-12-23 20:23:55 +01:00
|
|
|
migrate Migrate the database.
|
2023-12-26 03:12:57 +01:00
|
|
|
console Start the twenty developer console.
|
2023-12-08 19:27:00 +01:00
|
|
|
|
|
|
|
## Install
|
|
|
|
|
2024-03-12 09:10:02 +01:00
|
|
|
Twenty is distributed as a RubyGem.
|
|
|
|
|
2024-04-25 06:46:13 +02:00
|
|
|
$ gem install twenty
|
2023-12-08 19:27:00 +01:00
|
|
|
|
2024-03-12 09:10:02 +01:00
|
|
|
## Sources
|
|
|
|
|
|
|
|
* [GitHub](https://github.com/0x1eef/twenty)
|
|
|
|
* [GitLab](https://gitlab.com/0x1eef/twenty)
|
|
|
|
|
2023-12-08 19:27:00 +01:00
|
|
|
## License
|
|
|
|
|
|
|
|
[BSD Zero Clause](https://choosealicense.com/licenses/0bsd/).
|
|
|
|
<br>
|
|
|
|
See [LICENSE](./LICENSE)
|