diff --git a/edge/components/signup.edge b/edge/components/signup.edge index 2c72a76..8f32656 100644 --- a/edge/components/signup.edge +++ b/edge/components/signup.edge @@ -2,8 +2,8 @@ @if(prompt === true)

want to recieve backspin in your inbox?

@end -
- - + + +
\ No newline at end of file diff --git a/package.json b/package.json index 9183c6a..8b34c88 100644 --- a/package.json +++ b/package.json @@ -7,24 +7,24 @@ "scripts": { "check": "tsc --noEmit --erasableSyntaxOnly --allowImportingTsExtensions", "start": "node --env-file-if-exists=.env ./src/index.ts | pino-pretty", - "dev": "npm run check && portless backspin npm run start", + "dev": "npm run check && npm run start", "update": "npx npm-check-updates -u", "portless:config": "portless proxy start --https" }, "author": "Tierney Cyren ", "license": "MIT", "dependencies": { + "@fastify/formbody": "^8.0.2", "@fastify/view": "^11.1.1", "edge-markdown": "^1.10.0", "edge.js": "^6.5.0", "fastify": "^5.8.4", - "luxon": "^3.7.2" + "luxon": "^3.7.2", + "pino-pretty": "^13.1.3" }, "devDependencies": { "@types/luxon": "^3.7.1", "@types/node": "^25.5.0", - "pino-pretty": "^13.1.3", - "portless": "^0.7.2", "typescript": "^6.0.2" } } diff --git a/src/index.ts b/src/index.ts index 2bde7df..3cdbcc2 100644 --- a/src/index.ts +++ b/src/index.ts @@ -4,12 +4,19 @@ import { Edge } from 'edge.js' import { edgeMarkdown } from 'edge-markdown' import { readdir, readFile } from 'node:fs/promises' import { resolve, join } from 'node:path' +import { fastifyFormbody } from '@fastify/formbody' + +const port = Number(process.env.PORT); +const hostname = String(process.env.HOST); // fastify configuration const server = fastify( { logger: true } ) +//set up our form parsing +server.register(fastifyFormbody) + // set up parent of the `src` directory for us to use in different imports const parentOfSrcDirectory = resolve(import.meta.dirname, '..') @@ -101,13 +108,15 @@ server.get('/health', async (request, reply) => { return { status: 'ok' } }) +server.post('/signup', async (request: any, reply: any) => { + const { email } = request.body; + reply.send({ email }); +}) + // run the server const start = async () => { - const port = Number(process.env.PORT); - const host = String(process.env.HOST); - try { - await server.listen({ port, host }); + await server.listen({ port, host: hostname }); } catch (err) { server.log.error(err) process.exit(1)