Developer documentation
Introduction
Your complete guide to deploying, customizing, and extending Raytha CMS. Learn how to build templates, create custom content types, and integrate advanced features.
Deploy with Docker
Learn how to deploy Raytha using Docker. Covers required dependencies (Postgres, SMTP), environment variables, file storage options, and running multiple instances with custom path bases.
Deploy with Railway
Learn how to deploy Raytha CMS on Railway with one-click setup and automatic HTTPS configuration.
File storage
Configure file storage for Raytha using local filesystem, Azure Blob, or S3-compatible providers. Learn about environment variables, file size limits, MIME types, and direct cloud uploads.
Sending emails
Configure SMTP for Raytha email functionality. Set up Papercut SMTP for local development and production-ready transactional email services like SendGrid or Mailgun.
Introduction
Learn how Raytha uses Liquid templating syntax powered by .NET Fluid. Understand parent/child template inheritance, the renderbody tag, and available variables for building dynamic content.
Detail views vs list views
Understand detail and list view templates in Raytha. Learn to use Target.Items for loops, implement pagination, access PublishedContent fields, and work with relationships between content types.
Functions and filters
Explore Raytha's custom Liquid functions and filters. Query content with get_content_items, retrieve menus with get_main_menu, use attachment URLs, apply timezone conversions, and group data.
OData in templates
Master OData filtering in Raytha templates. Learn to filter, sort, paginate, and search content using query parameters with comparison operators, logical operators, and functions like contains.
Introduction
Write custom JavaScript code in Raytha to extend functionality. Create API endpoints, handle form submissions, send emails, make HTTP calls, and build webhooks with ClearScript V8 engine.
Http request trigger
Create custom API endpoints with HTTP Request triggers. Handle GET and POST requests, process query parameters and form data, and return JSON, HTML, redirects, or status codes.
Webhook trigger
Automate actions when content items are created, updated, or deleted. Implement run(payload) to receive ContentItemDto and trigger external webhooks or internal processes.
Built-in objects
Reference guide for Raytha Functions built-in objects. Use API_V1 for content operations, CurrentUser and CurrentOrganization for context, Emailer for notifications, and HttpClient for external APIs.
Json Web Token
Implement JWT single sign-on for Raytha. Configure authentication schemes, build sign-in endpoints with callback URLs, and create JWT payloads with exp, email, sub, and user groups.
SAML
Configure SAML single sign-on for Raytha with identity providers like Google Workspace. Set up authentication schemes, ACS URLs, X.509 certificates, and SAML assertions for users and admins.