- Write Manefesto
- Webrings were a great way to discover content + they were fun
- Open source hosted on github - no backend (filesystem as db) - data open and free - will never fail due to lack of funding
- Justify 90s web design principals within the context of a SSR next app
- Justify using github as they backend
- Define common use cases - personal sites from CS class, enthusiast sites
- Define Structure of Repository
- src - contains next app
- rings - contains ring JSON definitions
- Define schema
- Should different rings have different schema?
- Validate schema
- Which fields in schema are mutable, which are not? slug should be immutable.
- Define schema to describe rings
- slug
- title
- purpose (descriptive text)
- categories?
- Qualifications for membership.
- Support for custom schemas + renderers
- Define how changes to rings & new rings are approved
- Should we really use PRs for everything? Are there rate limits?
- 1 ring per site?
- How should sites be ordered within a ring?
- how big can rings get?
- Are sites removed from the ring? How do we moderate membership?
- Add sample code display a webring on your site
- HTML table? no javascript?
- filter / highlight your site
- npm packages that are minimally scoped and auto publish -
const ring = require('open-webring/dumpster-fire');
- Also render JSON to html for iframe
- Study Previous + Existing Webring efforts
- understand schemas, ordering, indexing, content
- Why did they fail? - Talk about in Manefesto, justify existence
- Ask for Sage Weil's blessing
- Consider re-implementing the old webring.org api
- Next App
- favicon - circularly linked list?
- Move schema validation into app
- Borrow styles/tables from webring.org
- Auto generate index as part of next app
- CI
- Build app in CI
- Add tests to validating ring JSONs
- Add a github action to scrape member sites + check if webring is on site
- https://github.com/palantir/bulldozer for automating approvals
- Convince a group of people to join a webring.