178 lines
5.7 KiB
Markdown
178 lines
5.7 KiB
Markdown
<div align="center">
|
|
<h1 style="position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border-width: 0">Fortura Data Solutions</h1>
|
|
<p align="center">
|
|
A high-performance, cost-effective, and privacy-first alternative to cloud hosting for enterprises.
|
|
</p>
|
|
|
|
<a href="https://github.com/fortura-data/landing-page/stargazers"><img alt="GitHub Repo stars" src="https://img.shields.io/github/stars/fortura-data/landing-page?style=for-the-badge"></a>
|
|
<a href="https://twitter.com/forturadatasol"><img alt="Twitter Follow" src="https://img.shields.io/twitter/follow/forturadatasol?style=for-the-badge&logo=x"></a>
|
|
<a href="https://github.com/fortura-data/landing-page/blob/main/LICENSE.md"><img alt="License" src="https://img.shields.io/badge/License-Proprietary-blue.svg?style=for-the-badge"></a>
|
|
|
|
</div>
|
|
|
|

|
|
|
|
## About Fortura Data Solutions
|
|
|
|
Fortura Data Solutions provides a modern, enterprise-grade infrastructure stack that allows organizations to **own their hardware, slash their cloud bills, and maintain full control over their data**.
|
|
|
|
We built our platform for high-demand environments like VFX studios, where petabytes of data move in real-time on tight budgets. Now, we're bringing that same performance and cost-efficiency to every business serious about their bottom line and data sovereignty.
|
|
|
|
### Why Fortura?
|
|
|
|
* **Cost Reduction:** Stop paying rent. Own the hardware and see your operational costs drop significantly, often achieving break-even within 12 months.
|
|
* **Performance:** Get cloud-level performance with sub-10ms latencies on colocated hardware, tailored to your workloads.
|
|
* **Data Ownership & Privacy:** Your data stays on your hardware, governed by your rules. AI-native workflows keep your data private, with zero leakage to third parties.
|
|
* **Integrated Stack:** We help you build on the tools you already use, wiring them together and automating the boring parts.
|
|
* **Minimal Retraining:** Our "desire paths" approach means we embed with your team, shape the system to how you *actually* work, then automate.
|
|
|
|
## Getting Started
|
|
|
|
This repository contains the code for the Fortura Data Solutions marketing website. It's built with Next.js, TypeScript, and Tailwind CSS.
|
|
|
|
### Prerequisites
|
|
|
|
- Node.js >= 20
|
|
- pnpm >= 8
|
|
- Docker (optional, for containerized deployment)
|
|
|
|
### Environment Variables
|
|
|
|
To run this project, you'll need to set up the following environment variables:
|
|
|
|
```bash
|
|
# Create a .env.local file in the root directory
|
|
cp .env.local.example .env.local
|
|
```
|
|
|
|
Then edit the `.env.local` file to include your configuration:
|
|
|
|
```env
|
|
# Next.js environment
|
|
NODE_ENV=development
|
|
|
|
# API endpoints (if applicable)
|
|
# NEXT_PUBLIC_API_URL=http://localhost:3001/api
|
|
|
|
# Analytics (if self-hosted)
|
|
# NEXT_PUBLIC_PLAUSIBLE_DOMAIN=your-domain.com
|
|
# NEXT_PUBLIC_PLAUSIBLE_API_HOST=https://plausible.your-domain.com
|
|
|
|
# Contact form submission endpoint
|
|
# CONTACT_FORM_ENDPOINT=https://n8n.your-domain.com/webhook/contact-form
|
|
|
|
# Calendly integration (if applicable)
|
|
# CALENDLY_URL=https://calendly.com/your-calendly-url
|
|
```
|
|
|
|
### Development
|
|
|
|
To run the development server:
|
|
|
|
```bash
|
|
# Install dependencies
|
|
pnpm install
|
|
|
|
# Run the development server
|
|
pnpm dev
|
|
```
|
|
|
|
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
|
|
|
|
### Docker Deployment
|
|
|
|
To build and run the application using Docker:
|
|
|
|
1. Build the Docker image:
|
|
```bash
|
|
docker build -t fortura-website -f apps/www/Dockerfile .
|
|
```
|
|
|
|
2. Run the container:
|
|
```bash
|
|
docker run -p 3000:3000 --env-file .env.local fortura-website
|
|
```
|
|
|
|
Alternatively, use docker-compose:
|
|
```bash
|
|
docker-compose up --build
|
|
```
|
|
|
|
The application will be available at [http://localhost:3000](http://localhost:3000).
|
|
|
|
### Production Build
|
|
|
|
To create a production build:
|
|
|
|
```bash
|
|
# Build the application
|
|
pnpm build
|
|
|
|
# Start the production server
|
|
pnpm start
|
|
```
|
|
|
|
## Troubleshooting
|
|
|
|
### TS2742 from Fumadocs generated files (Next.js 15 type-check)
|
|
|
|
TypeScript can flag the generated Fumadocs output in `apps/www/.source/index.ts` because the inferred type of `docs` references private internals from `fumadocs-mdx/dist/...`. Next 15 enforces strict type portability and fails with TS2742.
|
|
|
|
Fast unblock (recommended and safe): exclude generated files from type-check.
|
|
|
|
1) Ensure `apps/www/tsconfig.json` excludes the generated folder and relaxes lib checks:
|
|
|
|
```json
|
|
{
|
|
"compilerOptions": {
|
|
"skipLibCheck": true
|
|
},
|
|
"exclude": [
|
|
".source",
|
|
".source/**/*"
|
|
]
|
|
}
|
|
```
|
|
|
|
2) Clean and rebuild the app:
|
|
|
|
```bash
|
|
rm -rf apps/www/.source
|
|
pnpm -C apps/www build
|
|
```
|
|
|
|
Proper fix (long-term): align Fumadocs + Zod and regenerate.
|
|
|
|
1) Upgrade deps (workspace-wide):
|
|
|
|
```bash
|
|
pnpm -w up fumadocs-mdx@latest fumadocs-core@latest fumadocs-ui@latest @types/mdx@latest
|
|
pnpm -w up zod@^4
|
|
```
|
|
|
|
2) Regenerate the `.source` output:
|
|
|
|
```bash
|
|
rm -rf apps/www/.source
|
|
pnpm -C apps/www build
|
|
```
|
|
|
|
3) If the generator still emits a generic that triggers TS2742, enforce a portable annotation in `apps/www/.source/index.ts` (temporary):
|
|
|
|
```ts
|
|
import { _runtime } from 'fumadocs-mdx';
|
|
type DocsData = ReturnType<typeof _runtime.docs>;
|
|
export const docs: DocsData = _runtime.docs(/* generated arrays */);
|
|
// or fallback: export const docs: unknown = _runtime.docs(/* generated arrays */);
|
|
```
|
|
|
|
Note: Keeping `.source` excluded from type-checks is fine even after upgrades; it also speeds up CI.
|
|
|
|
## Documentation
|
|
|
|
Detailed documentation for Fortura's services, migration guides, and operational procedures is available to clients on our internal portal.
|
|
|
|
## License
|
|
|
|
This website's code is licensed under a proprietary license. See [LICENSE.md](LICENSE.md) for details.
|