A website for the ATmosphereConf
TypeScript 63.4%
Astro 35.1%
JavaScript 1.0%
CSS 0.2%
Other 0.3%
10 3 0

Clone this repository

https://tangled.org/atprotocol.dev/ATmosphereConf.org https://tangled.org/did:plc:lehcqqkwzcwvjvw66uthu5oq/ATmosphereConf.org
git@tangled.org:atprotocol.dev/ATmosphereConf.org git@tangled.org:did:plc:lehcqqkwzcwvjvw66uthu5oq/ATmosphereConf.org

For self-hosted knots, clone URLs may differ based on your setup.

Download tar.gz
README.md

ATmosphereConf#

![NOTE] There is a Github repo at https://github.com/ATProtocol-Community/atmosphereconf that is the main source. We are using Railway for hosting, and it has Github integration for deploys, so we're going to use this for now and then figure out how to sync both / have a discussion about further community build outs.

Main website: https://atmosphereconf.org

Rest of content below from original.

Astro ATProto OAuth Starter#

A minimal Astro starter template demonstrating OAuth authentication with AT Protocol (ATProto), the decentralized social networking protocol used by Bluesky and other services.

This starter includes:

  • Complete OAuth authentication flow using @atproto/oauth-client-node
  • Cookie-based session management
  • Profile display after authentication
  • Login/logout endpoints
  • Tailwind CSS and DaisyUI styling

🚀 Getting Started#

  1. Install dependencies:

    npm install
    
  2. Configure environment variables:

    cp .env.template .env
    

    Edit .env if you need to change the port (default: 4321) or set a public URL.

  3. Start the development server:

    npm run dev
    

    The app will be available at http://localhost:4321

  4. Try logging in: Enter your AT Protocol handle (e.g., alice.bsky.social) to authenticate.

📁 Project Structure#

/
├── public/
├── src/
│   ├── lib/
│   │   ├── context.ts      # OAuth client singleton
│   │   ├── oauth.ts        # OAuth client configuration
│   │   ├── session.ts      # Session management
│   │   └── storage.ts      # Cookie-based stores
│   ├── pages/
│   │   ├── api/
│   │   │   ├── login.ts    # Login endpoint
│   │   │   ├── logout.ts   # Logout endpoint
│   │   │   └── oauth/
│   │   │       └── callback.ts  # OAuth callback handler
│   │   └── index.astro     # Main page with login UI
│   └── styles.css
└── package.json

🧞 Commands#

All commands are run from the root of the project, from a terminal:

Command Action
npm install Installs dependencies
npm run dev Starts local dev server at localhost:4321
npm run build Build your production site to ./dist/
npm run preview Preview your build locally, before deploying
npm run astro ... Run CLI commands like astro add, astro check
npm run astro -- --help Get help using the Astro CLI

📚 Learn More#