A CLI tool to bootstrap Skip services with various templates. It provides a quick way to start new Skip projects with pre-configured templates for different use cases.
To create a new Skip service, run:
npx create-skip-service <project-name> [options]Requirements: Node.js ≥ 22.12.0. Generated projects use Bun ≥ 1.3 as their package manager (the services themselves run on Node.js).
-t, --template <name>- Use a specific template (default, with_postgres, with_react_vite)-e, --example <name>- Use an example from the Skip repository--no-git-init- Skip git repository initialization-f, --force- Overwrite existing directory-v, --verbose- Show detailed output-q, --quiet- Suppress non-error output
Templates and examples are downloaded through the GitHub API, which allows
about 60 unauthenticated requests per hour. If you hit the limit, set the
GITHUB_TOKEN environment variable to any valid GitHub token:
GITHUB_TOKEN=$(gh auth token) npx create-skip-service my-projectTemplates can be found here.
A basic reactive Skip service template that includes:
- Core Skip service structure
- TypeScript configuration
- Development tools setup
A template that includes:
- PostgreSQL database integration
- Database models and schema
- TypeScript configuration
- Development tools setup
A full-stack chat application template that includes:
- React frontend with Vite
- Skip reactive service backend
- Real-time chat functionality
- TypeScript configuration throughout
To work on this tool locally:
- Clone the repository (requires Bun ≥ 1.3 and Node.js ≥ 22.12)
- Install dependencies:
bun install
- Build the project:
bun run build
- Run in development mode:
bun run dev
bun run build- Build the projectbun run start- Run the CLIbun run dev- Run in development mode with watchbun run clean- Clean build artifactsbun run format- Format code with Prettierbun run test- Run tests in watch modebun run test:run- Run tests oncebun run test:ui- Run tests with UIbun run test:coverage- Run tests with coverage reportbun run typecheck- Type checking without emitting
node dist/cli.js <project-name> [options]A Makefile wraps the same checks CI runs (make help lists every target):
make check # Prettier check + tests + typecheck + build (root)
make check-templates # Install, build and lint each template package
make format # Format the whole repo in placeEach template under templates/ is an independent package with its own
bun.lock; make check-templates installs them with --ignore-scripts, so the
@skipruntime/native addon is not compiled in CI.
You can also bootstrap your project using examples from the Skip repository by using the --example flag:
npx create-skip-service my-project --example <example-name>A full-stack blogging platform demonstrating:
- Skip reactive service with leader-follower distributed configuration
- Flask web service for REST API
- Vue.js frontend
- PostgreSQL database
- HAProxy reverse proxy
- Docker Compose and distributed deployment options
A real-time chat application featuring:
- Skip reactive service with Kafka event store
- Express.js web service
- React frontend with real-time messaging
- Docker Compose configuration
- Event-driven architecture demonstration
A HackerNews clone showcasing:
- Skip reactive service with distributed leader-follower setup
- Flask web service with read/write separation
- React frontend with real-time updates
- PostgreSQL database
- HAProxy load balancing
- Both Docker Compose and Kubernetes deployment options
- Comprehensive real-time voting and posting system
Join the Discord to talk to other community members and developers or ask any questions.