No description
Find a file
0x1eef c3b5c2377c Add FilterInput
Easier to quickly set focus on project.
2024-04-24 03:21:07 -03:00
.bundle Add .bundle/config 2023-12-20 11:24:54 -03:00
cli Fix cli/libexec/twenty/* 2024-04-23 17:54:36 -03:00
client Add FilterInput 2024-04-24 03:21:07 -03:00
host Rename: *.gemspec.erb => *.gemspec.tt 2024-04-21 22:54:47 -03:00
server Rename: *.gemspec.erb => *.gemspec.tt 2024-04-21 22:54:47 -03:00
.gitignore Add tooling for gem releases 2024-02-07 19:40:48 -03:00
.gitmodules Drop 'twenty-' prefix from toplevel directories 2024-04-21 20:11:25 -03:00
.projectile Replace ParamContext & CookieContext with AppContext 2024-03-13 06:58:18 -03:00
.rubocop.yml Exclude src/tmp/ (rubocop.yml) 2024-04-21 22:58:42 -03:00
Gemfile Drop 'twenty-' prefix from toplevel directories 2024-04-21 20:11:25 -03:00
LICENSE Add twenty-frontend/ 2023-12-08 15:27:00 -03:00
Rakefile.rb Move "host" files to host/ 2024-04-21 22:13:01 -03:00
README.md README: update 2024-04-08 18:56:58 -03:00
twenty.gemspec Move "host" files to host/ 2024-04-21 22:13:01 -03:00
twenty.gemspec.tt Rename: *.gemspec.erb => *.gemspec.tt 2024-04-21 22:54:47 -03:00
VERSION v0.3.5 2024-02-15 21:46:26 -03:00

About

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.

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.
  • 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.rb

Sources

License

BSD Zero Clause.
See LICENSE