Form

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

GPL-3.0 License

Stars
1
Committers
2

NMSUD Form

Makes submitting your builds for Unification Days easier.

๐Ÿ“ฆ 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.

๐ŸŽจ 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

Badges
Extracted from project README
Supported by the No Man's Sky Community Developers & Designers codeCoverage Website Discord
Related Projects