Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.0.1 of Stencil Spec + Compiler #132

Open
3 tasks
techsavvyash opened this issue Jun 13, 2024 · 2 comments
Open
3 tasks

v0.0.1 of Stencil Spec + Compiler #132

techsavvyash opened this issue Jun 13, 2024 · 2 comments
Assignees

Comments

@techsavvyash
Copy link
Member

techsavvyash commented Jun 13, 2024

Description

The version v0.0.1 of the stencil spec we have the following tasks

  • Document which spec fields are taken and why are they taken
  • Docs on what features we can add moving forward i.e. future scope
  • v0.0.1 of the compiler in CLI which can parse this config and churn out a new stencil project will all the features setup
@techsavvyash
Copy link
Member Author

techsavvyash commented Jul 3, 2024

@Savio629

  • The PR is still marked as draft, can we review it?
  • Does the PR adds docs on the spec?
  • Does it contain test cases?

Please move this to ready for review once all the boxes are crossed off. For running review you can just drop a text here and click on the request a review button on the PR itself.

@Savio629
Copy link
Collaborator

README.md for Docker Command

Spec Command

stencil spec [path]

eg. stencil spec src/spec.yaml

The structure of specification file:

stencil: 0.0.1

info:
  properties:
    project-name: "Test"
    package-manager: "npm"

tooling: [prisma,monitoring]

docker:
  service: [temporal,logging,monitoring]
  adhoc-services: [postgres,hasura]

endpoints:

Description

Bootstrap a new project on basis of given specification file.

Arguments

Argument Description
<path> The path of the specification file

Structure of specification file

stencil: 0.0.1

  • stencil: This field denotes the version of the stencil specification. It helps in identifying the format and compatibility of the specification file.
info:
  properties:
    project-name: "ProjectName"
    package-manager: "npm"
  • info: This section contains metadata about the project.
  • properties: A nested section under info containing specific attributes:
  • project-name: Specifies the name of the project.
  • package-manager: Supported package managers as of now are npm, pnpm, yarn and bun .

tooling: [prisma,monitoring]

  • tooling: This is a list of tools utilized in the project. Supported tooling as of now are prisma, monitoring,service-temporal, service-user and service-file-upload
docker:
  service: [temporal,logging,monitoringService]
  adhoc-services: [postgres,hasura]

  • docker: This section lists the Docker services used in the project.
    • service: A list of Tooling specific setup, which includes temporal, logging, and monitoringService.
    • adhoc-services: A list of À la Carte setup, which includes postgres and hasura.

endpoints:

  • endpoints: This section is reserved for defining various endpoints used in the project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants