Commit 8efef1d7 authored by Grant's avatar Grant
Browse files

Initial commit

parents
Loading
Loading
Loading
Loading

.env.example

0 → 100644
+6 −0
Original line number Diff line number Diff line
PORT=3000
AUTH_ENDPOINT=https://auth.fediverse.events
AUTH_CLIENT=
AUTH_SECRET=
AUTH_CALLBACK=http://localhost:3000/api/callback
 No newline at end of file

.gitignore

0 → 100644
+3 −0
Original line number Diff line number Diff line
node_modules
.env
 No newline at end of file

Dockerfile

0 → 100644
+58 −0
Original line number Diff line number Diff line
FROM node:20-alpine AS base

FROM base as dev_dep
RUN mkdir -p /home/node/app/node_modules && chown -R node:node /home/node/app
WORKDIR /home/node/app

# --- dependencies ---
COPY --chown=node:node package*.json ./

USER node
RUN npm install --include=dev

FROM base as dep
RUN mkdir -p /home/node/app/node_modules && chown -R node:node /home/node/app
WORKDIR /home/node/app

# --- dependencies ---
COPY --chown=node:node package*.json ./

USER node
RUN npm install --omit=dev

#
# === BUILDER ===
#

FROM base as build
RUN mkdir -p /home/node/app/node_modules && chown -R node:node /home/node/app
WORKDIR /home/node/app

COPY --from=dev_dep /home/node/app/ ./

COPY --chown=node:node . .

RUN npm run build

#
# === RUNNER ===
#

FROM base as run
WORKDIR /home/node/app
COPY --from=dep /home/node/app/ ./
COPY package*.json docker-start.sh ./

COPY --from=build /home/node/app/dist ./dist

# --- finalize ---

# set runtime env variables

ENV PORT 3000
ENV NODE_ENV production

EXPOSE 3000
ENTRYPOINT [ "/bin/sh" ]
CMD [ "./docker-start.sh" ]
 No newline at end of file

README.md

0 → 100644
+15 −0
Original line number Diff line number Diff line
# fediauth-demo

An incredibly simple demo to interact with Fediverse Auth

## Development

1. Clone the repo
2. Run `npm i`
3. Copy `.env.example` to `.env`
4. Run `npm run dev`

## Running

1. `docker build . -t fediauth-demo`
2. `docker run -d -p 3000:3000 -e AUTH_ENDPOINT= -e AUTH_CLIENT= -e AUTH_SECRET= -e AUTH_CALLBACK= fediauth-demo` (filling in the environment variables)

docker-start.sh

0 → 100644
+4 −0
Original line number Diff line number Diff line
#!/bin/sh

npm run start
 No newline at end of file