Documentation
Configuration
Configure Loly Framework to fit your needs.
Framework Configuration
Create loly.config.ts in your project root:
loly.config.ts
import { FrameworkConfig } from "@lolyjs/core";
export default {
directories: {
app: "app",
build: ".loly",
static: "public",
},
server: {
port: 3000,
host: "localhost",
},
routing: {
trailingSlash: "ignore",
caseSensitive: false,
basePath: "",
},
rendering: {
framework: "react",
streaming: true,
ssr: true,
ssg: true,
},
} satisfies FrameworkConfig;Server Configuration
Configure server settings by exporting a config function:
loly.config.ts
import { ServerConfig } from "@lolyjs/core";
export const config = (env: string): ServerConfig => {
return {
bodyLimit: "1mb",
corsOrigin: env === "production"
? ["https://yourdomain.com"]
: "*",
rateLimit: {
windowMs: 15 * 60 * 1000,
max: 1000,
strictMax: 5,
strictPatterns: ["/api/auth/**"],
},
};
};Server Initialization
Create init.server.ts to initialize services when the server starts:
init.server.ts
import { InitServerData } from "@lolyjs/core";
export async function init({
serverContext,
}: {
serverContext: InitServerData;
}) {
// Initialize database connection
await connectToDatabase();
// Setup external services
await setupExternalServices();
// Any other initialization logic
console.log("Server initialized successfully");
}Note: init.server.ts is for initializing your application services, not for configuring Loly Framework. Framework configuration goes in loly.config.ts.
Environment Variables
Use environment variables for configuration:
# .env
PORT=3000
HOST=0.0.0.0
NODE_ENV=production
PUBLIC_WS_BASE_URL=http://localhost:3000
DATABASE_URL=postgresql://...
API_KEY=your-api-keyAccess environment variables in your code:
const port = process.env.PORT || 3000;
const dbUrl = process.env.DATABASE_URL;