Skip to content
/ Form Public

πŸ“œ Custom form app for collecting data for Unification Days

License

Notifications You must be signed in to change notification settings

NMSUD/Form

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

NMSUD Form

Makes submitting your builds for Unification Days easier.


header


madeWithLove gitmoji

Vite Vitest Vitepress Typescript

SolidJS HopeUI Swagger Storybook

koaJS xata Docker Github Actions

Supported by the No Man's Sky Community Developers & Designers

Profile views

πŸ“¦ Projects in this repo

Website

This is the website that contains the forms that users will see. It allows for user inputs, with validation and knows how to package all the information to be sent to the API.

API

This is able to accept requests, prevent spam, unpack and verify the contents and ultimately securely store the information in a database.

Data generator

This script is able to pull all the uploaded images and the records out of the database. Then the script manipulates and writes the data to json files to be consumed by websites, apps, etc later.


πŸƒβ€β™‚οΈ Running the project

Requirements

  • Node.js version 18 or higher.
  • Terminal for running npm scripts.
  • VSCode is recommended.

Steps

  1. Clone this repository.
  2. Copy and rename the env.dart.template file to env.dart.
  3. In the directory where the package.json file is, run npm i to install all the required packages.
  4. Run npm run setup to run the initial setup.
  5. Run the app
    • Web can be run locally using npm run start:web.
    • API can be run locally using npm run start:api.
    • Data can be run locally using npm run start:data.

πŸ§ͺ Running the tests

This project uses vitest for unit tests. The tests in this project are mostly testing the validation functions used on both the website and API projects. Hoping to add more tests in the future!

To run the tests, use the command npm run test.

codeCoverage


🎨 Storybook

This project has Storybook set up. This is mostly for visual testing and is suitable for components such as the reusable form components in src/components/form.

To run storybook use the command npm run storybook:dev.
Then open localhost:3003


πŸ‘ͺ Contributing

Please take a look at the Contribution Guideline before creating an issue or pull request.


πŸ“„ Documentation

We have a documentation website, here you can find information on how to run the project on your machine, how the project was setup, how to add new forms, how to run unit tests and more.


πŸ”— Links

Website
Discord