A monorepo containing both the server (Hono + Better Auth) and studio (React) applications for creating and managing interactive digital artifacts.
- Deno (for server)
- Node.js 18+ (for studio)
- MongoDB (local install or MongoDB Atlas account)
git clone <your-repo-url>
cd vhybZ
# Install studio dependencies
cd studio && npm install
cd ..cd server
# Copy environment template
cp .env.example .env
# Start server (works without Google OAuth!)
deno task devThe server will start in development mode with mock authentication - no Google OAuth setup required! π
Visit http://localhost:8000 to see the server running with development instructions.
cd studio
# Copy environment template
cp .env.example .env
# Start studio
npm run devVisit http://localhost:5173 to see the React application.
Option 1: Local MongoDB
# Install MongoDB locally or use Docker
docker run -d -p 27017:27017 --name mongodb mongo:latestOption 2: MongoDB Atlas (Recommended)
- Create account at MongoDB Atlas
- Create a cluster and get connection string
- Update
MONGODB_ATLAS_URIin your.envfiles
- Go to Google Cloud Console
- Create a project and enable Google+ API
- Create OAuth 2.0 credentials
- Add to your
.envfiles:GOOGLE_CLIENT_ID=your-google-client-id GOOGLE_CLIENT_SECRET=your-google-client-secret
vhybZ/
βββ server/ # Hono backend with Better Auth
β βββ main.ts # Main server file
β βββ deno.json # Deno configuration
β βββ .env.example # Environment template
βββ studio/ # React frontend with React Router 7
β βββ src/ # React application source
β βββ package.json # Node.js dependencies
β βββ .env.example # Environment template
βββ docs/ # Documentation
- No Google OAuth required
- Mock authentication system
- Perfect for new developers to get started immediately
- Automatic when
GOOGLE_CLIENT_IDandGOOGLE_CLIENT_SECRETare not set
- Full Google OAuth integration
- Real user authentication and sessions
- Requires Google Cloud Console setup
cd server
deno task dev # Development with hot reload
deno task start # Production start
deno task check # Lint and type check
deno task fmt # Format codecd studio
npm run dev # Development with hot reload
npm run build # Production build
npm run start # Production start
npm run lint # ESLint check- Push to GitHub
- Connect repository to Deno Deploy
- Set environment variables in Deno Deploy dashboard
- Deploy from
server/main.ts
- Build:
npm run build - Deploy
dist/folder - Set environment variables in hosting platform
This is expected in development! The server will automatically switch to mock auth mode.
- Check MongoDB is running locally on port 27017
- Verify MongoDB Atlas connection string and IP whitelist
- Ensure database user has correct permissions
- Verify studio URL is included in server CORS origins
- Check that credentials are included in requests
- Fork the repository
- Create a feature branch
- Make your changes
- Test locally (both server and studio)
- Submit a pull request
See LICENSE file for details.