Skip to content

patrickarvatu.com is my open source personal website. 💻

License

Notifications You must be signed in to change notification settings

Lambels/patrickarvatu.com

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

patrickarvatu.com Version Go Backend Test

patrickarvatu.com is my open source personal website!

State

patrickarvatu.com isnt yet in production, however it is under active development.

Things Done:

  • SQL logic implemented.
  • Implement sql code in sql package
  • HTTP exposure to the sql package
  • OAuth github implementation
  • Event Service implemented using asynq
  • CLI start upp

TODO:

  • Dockerize app
  • Node api to interact with frontend fs
  • Finish static pages on frontend (about, index)
  • Profile component
  • Near future: Support more OAuth providers
  • Write tests: sql package
  • Write tests: http package

Backend

Frontend

  • Built with react.js
  • Using next.js on top of react.js
  • Styling done with tailwind css

Config File

The config file uses the toml formant.

Fields:

Field Description Under
client-id Client ID of github oath 2.0 app [github]
client-secret Client Secret of github oauth 2.0 app [github]
admin-user-email the email of the admin, used to recognize admin user [github]
addr the address of the server (specify only port in development) [http]
domain the domain of the server (leave this empty in development) [http]
block-key key used for secure cookie encryption (see more) [http]
hash-key key used for secure cookie encryption (see more) [http]
frontend-url URL to frontend (ex: http://localhost:3000) [http]
sqlite-dsn path to sqlite database [database]
redis-dsn redis data source name (ex: 127.0.0.1:6379) [database]
addr address of the smtp server [smtp]
identity refer: godoc [smtp]
username refer: godoc [smtp]
password refer: godoc [smtp]
host refer: godoc [smtp]
blog-images-dir path to the http served file structure for blogs (used to store images) [file-structure]
project-images-dir path to the http served file structure for projects (used to store images) [file-structure]

Run:

GO 1.16 or higher is required

Currently the app isnt dockerized but you can run the go backend using go command line tool.

go install github.com/Lambels/patrickarvatu.com/cmd

If you have your GOBIN set to your path run the installed binary with the serve sub command and --config flag

bin_name serve --config ./path/to/config/file.toml

After you should have a running server on the address and domain specified in the config file.

About

patrickarvatu.com is my open source personal website. 💻

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages