• Stars
    star
    291
  • Rank 142,563 (Top 3 %)
  • Language
  • Created almost 3 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Ideas, suggestions, and formal RFC proposals for the Astro project.

Astro Project Roadmap

Overview

Glossary

Proposal Champion: A proposal is more likely to move forward in this process if it has a champion attached to it. This role is self-nominated and open to anyone (both maintainers and community members are welcome to volunteer). It may be the original proposal author, or someone who joins later. The responsibility of a champion is to help shepard the proposal through the later parts of this process, including: writing the detailed RFC, responding to and incorporating feedback, and eventually implementing the proposal in code.

You are not alone as a champion! If this is your first time writing an RFC or design document, our maintainer team is expected to work with you and guide you through this process.

Stage 1: Proposal

Goal: Unstructured, low-friction conversations on ideas and improvements to Astro. Useful for gathering early feedback and gauging interest with the community and maintainers.

Requirements: None! To suggest an improvement, create a new Discussion using our (completely optional) proposal template.

Location: GitHub Discussions (see all open proposals). The Astro Discord channel #feedback-ideas can also be used to throw an idea out for quick initial feedback, but be warned that chat is short-lived and not designed for longer-lived discussion.

Stage 2: Accepted Proposal

Goal: Confirm proposal feasibility with Astro Maintainers and the Technical Steering Committee (TSC).

Requirements: An existing proposal (Stage 1). In addition, a proposal is more likely to be accepted if it is detailed and well thought-out, can demonstrate community interest, has at least one champion volunteer, and has buy-in/interest from Astro maintainer(s).

Location: GitHub Issues (see all accepted proposals).

What to Expect: A proposal reaches this stage (aka "is accepted") during a meeting with Maintainers and TSC, following our existing RFC Proposal voting process.

When a proposal is accepted, a TSC member will create a new GitHub Issue summarizing the original proposal using our official template. At this point, the proposal champion is free to move on to the next stage. If a champion doesn't exist yet, then an accepted proposal may remain open until a champion volunteers by posting in the GitHub Issue.

In some cases, a proposal may be explicitly rejected by TSC if it is known to be infeasible, or go against some existing goals/mission of the project. In the event of an explicit rejection, a TSC member will comment on to the proposal explaining the reasoning for rejection.

A stale, accepted proposal can be removed (rejected after a previous acceptance) at any time following the same, existing RFC Proposal voting process.

Stage 3: RFC & Development

Goal: Begin development! Gather implementation feedback and work with maintainers during development.

Requirements: An accepted proposal (Stage 2) and a proposal champion to author and implement the RFC.

Location: GitHub Pull Requests (see all in-progress RFCs) (see all finished RFCs)

What to Expect: To create an RFC for an already-accepted proposal, the proposal champion must use our stage-3--rfc-template.md RFC template in the repo. The initial sections of the RFC template should be copy-pasted from the the accepted proposal (they match 1:1). All remaining sections are left for the champion to complete with the implementation and tradeoff details of the RFC.

You do not need to get an RFC approved before beginning development! One of the best ways to validate your RFC is to prototype, so early prototyping and parallel development alongside the RFC is strongly encouraged. The RFC is a living document during this stage, and is most useful for gathering feedback as you build. An RFC will not be accepted and merged until it's PR is also ready to merge.

The proposal champion can request feedback on their RFC at any point, either asynchronously in Discord (inside the #dev/#dev-ptal channel) or during our weekly community call. Maintainers are expected to provide timely feedback at this stage so that the RFC author is never blocked. If you are an RFC champion and need access to the #dev-ptal channel, message @fks for permission.

Stage 4: Ship it!

An RFC is ready to be approved and finalized once it's Pull Request is ready for its final review. When a champion thinks the RFC is ready he can ask for a call for consensus.

At this time, some member of the core team will motion for a final comment period (FCP). This follows our existing RFC Proposal voting process. Once the final comment period has elapsed the RFC will be merged if there are no objections.


Prior Art / Special Thanks

This process is an amalgamation of Remix's Open Development process and our previous RFC process, which had been based on the RFC processeses of the Vue, React, Rust, and Ember projects.

More Repositories

1

astro

The web framework for content-driven websites. ⭐️ Star to support our work!
TypeScript
45,685
star
2

starlight

🌟 Build beautiful, accessible, high-performance documentation websites with Astro
TypeScript
4,627
star
3

docs

Astro documentation
MDX
1,303
star
4

storefront

Astro for ecommerce 💰
TypeScript
561
star
5

compiler

The Astro compiler. Written in Go. Distributed as WASM.
Go
482
star
6

prettier-plugin-astro

Prettier plugin for Astro
TypeScript
476
star
7

astro.build

MDX
384
star
8

language-tools

Language tools for Astro
TypeScript
262
star
9

houston.astro.build

Experimental AI assistant trained on the Astro docs
Astro
248
star
10

blog-tutorial-demo

Astro
157
star
11

action

A GitHub Action that deploys your Astro project to GitHub Pages
152
star
12

houston-vscode

Visual Studio Code theme featuring cool blues, minty greens, and soft purples
CSS
131
star
13

adapters

Home for Astro's core maintained adapters
TypeScript
63
star
14

cli-kit

JavaScript
52
star
15

github-pages

Automatically deploy an Astro site to GitHub Pages
Astro
35
star
16

astro.new

Astro
33
star
17

wormhole

TypeScript
25
star
18

astro-repl

TypeScript
24
star
19

.github

Community health files for the @withastro organization
17
star
20

contribute.docs.astro.build

An entire Starlight site for the Astro Docs contributor guides.
MDX
17
star
21

site-kit

Styles, components, and tooling config for use in *.astro.build websites
JavaScript
16
star
22

esnext-conf-2020

Pika Presents: ESNEXT CONF 2020
HTML
12
star
23

view-transitions-demo

Astro
11
star
24

automation

Centralized repo for GitHub actions for the `withastro` org
11
star
25

studio-templates

Astro
11
star
26

houston-discord

TypeScript
9
star
27

astro-playground

TypeScript
7
star
28

action-studio

TypeScript
7
star
29

astro-ecosystem-ci

Astro Ecosystem CI
TypeScript
6
star
30

server-islands

Server islands demo
Astro
6
star
31

ASTRO-E2

beep boop beep boop
JavaScript
5
star
32

templates

A mirror of the examples from the main monorepo
Astro
5
star
33

astro-og-image

JavaScript
4
star
34

support-docs

A Starlight site for the Astro Support contributor guides.
CSS
3
star
35

withastro.github.io

HTML
2
star