No description
0x1eef
0cdea6df5e
The fix comes from updating to server.rb v0.2.1 Also add Gemfile.lock for server/, cli/ |
||
---|---|---|
.bundle | ||
cli | ||
client | ||
host | ||
server | ||
.gitignore | ||
.gitmodules | ||
.projectile | ||
.rubocop.yml | ||
Gemfile | ||
Gemfile.lock | ||
LICENSE | ||
Rakefile.rb | ||
README.md | ||
twenty.gemspec | ||
twenty.gemspec.tt | ||
VERSION |
About
Twenty is a standalone web application with its own practical purpose: management of my open source projects. It's also a place where I can experiment with a new model for the development of [web] applications in Ruby. See Design for more info.
Features
- Provides a command-line utility to start / stop a web server
- Connect / disconnect a project from the command line
- Designed to work offline
- Lightweight stack
- Easy to install, easy to use
Design
- The server is powered by rack and puma:
- Accepts GraphQL requests at
/graphql
- Serves client (HTML, JS, CSS)
- Dependencies: Sequel, SQLite3, ruby-graphql
- Accepts GraphQL requests at
- The client is a statically compiled nanoc website:
- Dependencies: webpack, typescript, react
- The CLI controls the web server:
- Start / stop web server
- Run database migrations
- Run developer console
- Each component (server, client, cli) are separate packages in a monorepo
- Easy to distribute as a RubyGem
Usage
CLI
Usage: twenty COMMAND [OPTIONS]
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
migrate Migrate the database
console Start the twenty developer console
Install
Twenty is distributed as a RubyGem:
$ gem install twenty
Sources
License
BSD Zero Clause.
See LICENSE