IvoryTower is a private site for members only. Only friends of existing members are considered for membership.
Welcome! Here's where I'm developing the third version of IvoryTower. I'm trying to balance greater transparency than in the past with my own need to stay motivated and engaged while working on IvoryTower, and for this to be an educational experience for me.
Check out the IvoryTower project board if you're curious what I plan on doing and approximately in what order.
For now, I'd prefer it if you could keep suggestions and reports of missing features and the like to a minimum—just stuff that's either an obvious tiny fix like a typo, or stuff that's really blocking you from using the new site like some text being invisible in dark mode, or a legacy feature you really miss. That should help me keep this feeling like a fun, educational side project instead of just work I do after work. You can post bug reports in the IvoryTower Suggestion Box thread.
Right now, I'm not really interested in PRs unless otherwise requested. I know that it's a little selfish to deny improvements until I address them on my own schedule, but I need that sense of ownership and control for this to be enjoyable. Maybe I'll feel differently someday when I'm not working a full-time job on other peoples' stuff.
Don't try to build anything on top of the new IvoryTower API or SDK. I'm still making lots of breaking changes and not versioning anything. I might entirely replace the SDK with an automatically-generated one before I consider it "v1". That's something I'll probably be wanting feedback on.
If you feel like trying things out locally, you'll need the latest stable versions of these:
By default, the site will use the live IvoryTower API at api.ivorytower.com. That won't work when hosting this site from http://localhost due to browser security rules. Instead, you can code against a dummy API that serves static JSON from src/routes/api/v1:
- Create a file at the root of this repo called
.env.local - Add this line:
VITE_API_SERVER=http://localhost
.env.local is ignored by Git, and overrides variables in .env which is in source control.
But wait, there's more! With VITE_DEV_SERVER set to localhost, you can still use the live API by using Vite's reverse proxy. Open vite.config.js and check out the server.proxy setting.
Once you've changed your API endpoint, run the site locally with these two handy commands.
npm installnpm start
IvoryTower 3 © 2021-2026 Travis Spomer, All Rights Reserved.