lolibrary

module
v0.0.0-...-73856a8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 6, 2020 License: BSD-3-Clause

README

Lolibrary

Lolibrary is a lolita fashion archive website. This repository is a monorepo containing code for what will eventually be all of Lolibrary.

Getting Started

To get started, you'll need to install Docker and the go compiler. You'll also need kubectl at a minimum, and if you're a Lolibrary core dev, access to our GKE cluster (ask on Discord, and use your @lolibrary.org email).

As a note, this only really supports macOS right now.

First, run ./bin/install. This will compile all Go tools and stick them into $GOPATH/bin. Add this to your path if needed!

💻 On macOS, you can install Homebrew to get all of these tools.

Running internal tools

HTTPS certificate

Lolibrary's ingress in dev should be running on HTTPS, as that assumption is made everywhere.

There is a self-signed certificate in the pki folder of this repository; you should trust this certificate on your development machine.

Then, provided you follow the guidance below, you'll be able to reach:

  • lolibrary.test:443 (main user frontend)
  • api.lolibrary.test:443 (all services that start with service.api.)
  • admin.lolibrary.test:443 (admin user frontend)
  • image-proxy.lolibrary.test:443 (a proxy to our configured CDN so that you load images locally)

This is only needed when running full tests across the entire platform. In most cases when you test a service in isolation you don't use the ingress, so you can just find it on localhost.

Hostnames

Add a dns resolver such as dnsmasq to resolve all .test domains to localhost. This will be needed! (setup.sh, again, does this automatically on Mac).

On windows, you can get away with just adding lolibrary.test and related domains to your hosts file pointing to 127.0.0.1

Security Vulnerabilities

If you discover a security vulnerability within this repo, email engineering@lolibrary.org. All security vulnerabilities will be promptly addressed.

License

Lolibrary's code is licenced under the BSD Licence.

You may not use any of Lolibrary Inc's logos or trademarks without prior written permission.

Lolibrary Inc is a 501(c)(3) non-profit incorporated in the USA.

Directories

Path Synopsis
cmd
flower/rpc
Package rpc performs RPC calls for a user, returning responses via typhon.
Package rpc performs RPC calls for a user, returning responses via typhon.
Package main (edge-proxy.api) is an external API proxy used to route to services starting with "service.api.".
Package main (edge-proxy.api) is an external API proxy used to route to services starting with "service.api.".
Package main (edge-proxy.internal) is an internal proxy used to route to services for dev and debug.
Package main (edge-proxy.internal) is an internal proxy used to route to services for dev and debug.
libraries
scripts
backfill/items/links
This backfills metadata for items.
This backfills metadata for items.
dao
dao
dao
dao
dao
dao
dao
dao
dao
dao

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL