Find a file
Wolvan 16ca2ee8b1 Fix relative pathing issues
Running from a subdirectory makes the entire script a bit cumbersome
to wrap around when it comes to relative paths. They should now all work
properly though.
Paths that are relative to the Project Root now work as expected (eg.
package.json path) and other paths like the data and config path are
based on the current execution directory.
2021-12-29 15:25:43 +01:00
frontend Build frontend loader system 2021-12-28 23:49:18 +01:00
src Fix relative pathing issues 2021-12-29 15:25:43 +01:00
test Initial commit 2021-12-28 21:11:19 +01:00
utils Initial commit 2021-12-28 21:11:19 +01:00
.editorconfig Initial commit 2021-12-28 21:11:19 +01:00
.eslintignore Initial commit 2021-12-28 21:11:19 +01:00
.eslintrc.json Initial commit 2021-12-28 21:11:19 +01:00
.gitignore Create rudimentary poll backend 2021-12-29 01:02:18 +01:00
.mocharc.json Initial commit 2021-12-28 21:11:19 +01:00
LICENSE Initial commit 2021-12-28 21:11:19 +01:00
package-lock.json Create rudimentary poll backend 2021-12-29 01:02:18 +01:00
package.json Create rudimentary poll backend 2021-12-29 01:02:18 +01:00
README.md Initial commit 2021-12-28 21:11:19 +01:00
tsconfig.json Initial commit 2021-12-28 21:11:19 +01:00

Poll.horse

Simple polling service for public polls

With strawpoll being somewhat very broken I decided to implement my own. Let's go!

What is this

If you have never used strawpoll, in short this is a website to easily make small polls without a fuss.

Contributing

The core is written in TypeScript, a typed superset to Javascript and executed with NodeJS. Pull Requests welcome.

Before cloning this repository, make sure you have Node installed.

Then clone this repository, open a terminal/command prompt and type npm i to install the required dependencies.

ts-node is recommended to test during development, install it with npm i -g ts-node typescript.

Directory Structure

  • ./dist - The finalized and compiled files that can be used with node
  • ./src - The source files of the project
  • ./test - Files required for unit testing, aka test setup/teardown and test spec files
  • ./utils - Various utility scripts not part of the main source code

Scripts

Execute the scripts with npm run <script>

  • find-todo - Finds remaining TODO: in the code and warns the developer that there are still things that are unfinished
  • mocha - Runs the unit tests in the /test directory
  • lint - Runs eslint and checks for code styling problems
  • build - Compile the TypeScript Source to dist/
  • test - Runs lint, find-todo and mocha in order
  • start - Run test and build, then try and execute the ./dist/main.js in the ./dist directory to test