SERSI

Kickstart modern apps in seconds. Your stacks, Your rules.

YAML Configuration File

SERSI uses a sersi.yaml file for project configuration. This file should be placed in your project root directory.

Basic Structure

name: your-project-name
structure: monorepo # or polyrepos
hooks:
  pre: true
  post: true
scaffold:
  frontend:
    framework: react
    css: tailwind
    lang: js
  backend:
    lang: js
    framework: express
    database: postgresql
  devops:
    ci: github
    docker: true
    monitoring: prometheus

Project Structure Options

OptionDescription
monorepoSingle repository containing all components
polyreposMultiple repositories for different components

Frontend Configuration

Framework Options

FrameworkDescriptionLanguage Support
reactReact.js frameworkJS, TS
vueVue.js frameworkJS, TS
svelteSvelte frameworkJS, TS
vanillaVanilla JavaScriptJS, TS

CSS Framework Options

CSS FrameworkDescription
tailwindTailwind CSS utility framework
bootstrapBootstrap CSS framework
cssPlain CSS

Language Options

LanguageDescription
js or javascriptJavaScript
ts or typescriptTypeScript

Frontend Configuration Example

scaffold:
  frontend:
    framework: react
    css: tailwind
    lang: typescript

Backend Configuration

Language Options

LanguageDescriptionFramework Support
js or javascriptNode.jsExpress, Fastify
ts or typescriptTypeScriptExpress, Fastify
goGoGin, Chi
py or pythonPythonFastAPI

Framework Options

Node.js Frameworks

FrameworkDescription
expressExpress.js web framework
fastifyFastify web framework

Go Frameworks

FrameworkDescription
ginGin web framework
chiChi router

Python Frameworks

FrameworkDescription
fastapiFastAPI web framework

Database Options

DatabaseDescriptionStatus
postgresqlPostgreSQL databaseWork In Progress
mongodbMongoDB databaseWork In Progress
noneNo databaseAvailable

Backend Configuration Example

scaffold:
  backend:
    lang: go
    framework: gin
    database: postgresql

Pro Features

SERSI Pro extends the open-source CLI with premium features:

Scaffold Store

  • Save and reuse project configurations
  • Share templates with team members
  • Version control for scaffold configurations

Custom Hooks

  • Advanced pre and post-hook capabilities
  • Custom script execution
  • Integration with external tools

Team Features

  • Shared private templates
  • Team collaboration tools
  • Advanced project management

Examples

Full-Stack React Application

name: my-react-app
structure: monorepo
hooks:
  pre: true
  post: true
scaffold:
  frontend:
    framework: react
    css: tailwind
    lang: typescript
  backend:
    lang: go
    framework: gin
    database: postgresql
  devops:
    ci: github
    docker: true
    monitoring: prometheus

Vue.js Frontend Only

name: my-vue-app
structure: monorepo
scaffold:
  frontend:
    framework: vue
    css: bootstrap
    lang: javascript

Python Backend with FastAPI

name: my-python-api
structure: polyrepos
scaffold:
  backend:
    lang: python
    framework: fastapi
    database: mongodb
  devops:
    ci: gitlab
    docker: true

Pro Example with Custom Configuration

name: enterprise-app
structure: polyrepos
hooks:
  pre: true
  post: true
scaffold:
  frontend:
    framework: react
    css: tailwind
    lang: typescript
  backend:
    lang: go
    framework: chi
    database: postgresql
  devops:
    ci: github
    docker: true
    monitoring: prometheus