DevelopingSpace / starchart

A self-serve tool for managing custom domains and certificates
MIT License
20 stars 13 forks source link

Starchart License: MIT

Starchart makes it easy for the Seneca developer community to create and manager their own custom subdomains and SSL certificates, without cost or having to provide personal information.

For information about running Starchart, see our deployment guide. For development information, see our contributing guide. For further technical background, planning, and initial designs, please see the wiki.

Introduction

The internet is evolving, and what used to be hard has become simple. For example, hosting your own website used to require knowledge of server administration, operating systems, networking, etc. Today, many developers host their personal and project websites without ever touching a remote server, opting for (free) cloud services like GitHub Pages, Vercel, Netlify, or AWS.

The internet's security model is also evolving. For example, browser vendors have embraced HTTPS everywhere. This is good for security, as it enables certificate-based encryption between clients and servers. However, as with many security best practices, the change has also added complexity to development and deployment.

With the move to HTTPS everywhere, developers wishing to communicate between hosts need to be able to register custom domains and work with SSL certificates. Seneca developers need to build and run many internet services securely, and in a way that can be shared with other teammates, instructors, etc. For example, running a project web site on GitHub or deploying an API with a load balancer on AWS.

Starchart makes it easy to quickly and freely create subdomains and SSL certificates to access these services using a memorable name, and to do so in a secure way.

Working with custom domains and certificates is particularly hard for student developers, who need to work across network hosts to learn and experiment. However, many don't have credit cards (or the money to buy domains), and don't necessarily understand the risks of leaking their personal information via domain registration (i.e., hiding your personal information for a .com domain costs even more money).

Starchart aims to support our educational developer community while they build and deploy services that require custom domains and certificates. It provides time-limited, personalized subdomains and SSL certificates that can be used in various hosting, cloud, or API contexts.

Starchart is not meant to be, or replace commercial registrars; nor is it meant for use outside of our educational/developer context.

1.0 Features

Technologies and components

Here is the planned architecture and technologies used: components