diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 6f9a4a5..35934f2 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -1,17 +1,13 @@
-## Description
-
+## 🔍 Description
+
-## Type of change
-- [ ] Bug fix
-- [ ] New feature
-- [ ] Breaking change
-- [ ] Documentation update
+## Type
+- [ ] 🐛 Bug Fix
+- [ ] ✨ Feature
+- [ ] 📚 Documentation
+- [ ] 🔧 Other: _____
## Checklist
-- [ ] My code follows the style guidelines of this project
-- [ ] I have performed a self-review of my own code
-- [ ] I have commented my code, particularly in hard-to-understand areas
-- [ ] I have made corresponding changes to the documentation
-- [ ] My changes generate no new warnings
-- [ ] I have added tests that prove my fix is effective or that my feature works
-- [ ] New and existing unit tests pass locally with my changes
\ No newline at end of file
+- [ ] Tested locally
+- [ ] Updated docs (if needed)
+- [ ] Added/updated tests (if needed)
\ No newline at end of file
diff --git a/.github/workflows/update-template.yml b/.github/workflows/update-template.yml
new file mode 100644
index 0000000..3186e8c
--- /dev/null
+++ b/.github/workflows/update-template.yml
@@ -0,0 +1,58 @@
+name: Trigger Template Repository Update
+
+on:
+ push:
+ branches:
+ - main
+ paths:
+ - 'packages/create-app/package.json'
+
+jobs:
+ trigger-update:
+ runs-on: ubuntu-latest
+ permissions:
+ contents: write
+ actions: write
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Extract Package Version
+ id: get-version
+ run: |
+ VERSION=$(jq -r .version packages/create-app/package.json)
+ echo "version=$VERSION" >> $GITHUB_OUTPUT
+
+ - name: Check Latest Release
+ id: check-release
+ run: |
+ LATEST_RELEASE=$(curl -s https://api.github.com/repos/${{ github.repository }}/releases/latest | jq -r .tag_name | sed 's/^v//')
+ CURRENT_VERSION=${{ steps.get-version.outputs.version }}
+ if [ "$LATEST_RELEASE" == "$CURRENT_VERSION" ]; then
+ echo "No version change detected. Skipping release."
+ echo "skip=true" >> $GITHUB_OUTPUT
+ else
+ echo "New version detected. Proceeding with release."
+ echo "skip=false" >> $GITHUB_OUTPUT
+ fi
+
+ - name: Create Release
+ if: steps.check-release.outputs.skip != 'true'
+ uses: softprops/action-gh-release@v1
+ with:
+ tag_name: v${{ steps.get-version.outputs.version }}
+ name: Release v${{ steps.get-version.outputs.version }}
+ draft: false
+ prerelease: false
+ generate_release_notes: true
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+
+ - name: Repository Dispatch
+ if: steps.check-release.outputs.skip != 'true'
+ uses: peter-evans/repository-dispatch@v2
+ with:
+ token: ${{ secrets.GITHUB_TOKEN }}
+ repository: ${{ github.repository_owner }}/akiradocs-template
+ event-type: update-template
+ client-payload: '{"ref": "${{ github.ref }}","sha": "${{ github.sha }}","version": "${{ steps.get-version.outputs.version }}"}'
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
index 18ba207..33afb52 100644
--- a/.gitignore
+++ b/.gitignore
@@ -58,3 +58,5 @@ template/
*node_modules*
+million/
+wrangler/
\ No newline at end of file
diff --git a/README.md b/README.md
index a14bc00..aecf47d 100644
--- a/README.md
+++ b/README.md
@@ -1,110 +1,95 @@
# AkiraDocs
-**Smart documentation platform with AI at its core**
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
- [![Demo Live](https://img.shields.io/badge/Demo-Live-color.svg)](https://demo.akiradocs.ai)
- [![Join Waitlist](https://img.shields.io/badge/Join-Waitlist-orange.svg)](https://forms.gle/KunU4BGhToH4NJ1t7)
+
+ If you find AkiraDocs useful, please consider giving it a star! ⭐️
+ Your support helps us continue improving the platform.
+
-## 🚀 Get Started
-To create a new AkiraDocs project using the OSS template, run:
+
+
+
-```bash
-npx create-akiradocs
-```
-
-## 🎯 Why Choose AkiraDocs?
-- **For Developers**:
- - Keep your existing Markdown/Git workflow
- - Full Markdown/MDX support
- - Easy custom component development
-
-- **For Content Teams**:
- - User-friendly WYSIWYG editor
- - Real-time previews, no coding required
-
-- **For Enterprises**:
- - SSO/SAML integration
- - Audit logs and custom deployment options
-
-## 😟 Common Documentation Challenges
-- Keeping documentation in sync across teams
-- Managing multiple versions of documents
-- Needing better analytics for documentation usage
-
-## 🎭 Use Cases
-- **Developer Documentation**: API references, SDK guides, implementation examples.
-- **Product Documentation**: User guides, release notes, tutorials.
-- **Enterprise Knowledge**: Internal wikis, process documentation.
-
-## 🚀 Migrate Existing Docs (Coming Soon)
-Easily bring your documentation from various sources:
-
-```bash
-npx akiradocs-migrate import --from=source --to=mydocs
+## **Smart documentation platform with AI at its core**
- Supported sources:
- ✓ Markdown/MDX files
- ✓ GitBook
- ✓ Docusaurus
- ✓ ReadTheDocs
- ✓ Confluence
- ✓ Notion
-```
-
-## 📄 SEO Optimized by Default
-Every page is automatically optimized for search engines:
-- SEO-friendly URLs and auto-generated meta tags
-- Mobile-first indexing and fast performance
+
+
+
+
+
+
+
+
-## ✍️ Modern Block-Based Editor
-Create documentation with ease:
-- Rich text blocks, images, diagrams, and code blocks
-- Collapsible sections and reusable content blocks
+## 🚀 What is AkiraDocs?
+AkiraDocs is a modern documentation platform that combines the power of AI with an intuitive authoring experience. Whether you're a developer, content creator, or enterprise team, AkiraDocs provides the tools you need to create, manage, and share documentation effectively.
-## 🌐 Multi-Language Support (Coming Soon)
-Reach a global audience with:
-- AI-powered translation suggestions
-- Side-by-side translation editor
+## ⚡️ Quick Deploy
+Get started in seconds:
-## 💪 Setup and Translate
-Set up environment variables for translation:
+[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2FCloud-Code-AI%2Fakiradocs-template)
+Or via CLI:
```bash
-ANTHROPIC_API_KEY=sk-ant-api03-...
+npx create-akiradocs
```
-Configure target languages in `akiradocs.config.json`:
-
+## 🎯 Perfect For
+- **Developers**: API docs, SDK guides, implementation examples
+- **Product Teams**: User guides, release notes, tutorials
+- **Enterprises**: Internal wikis, process documentation, knowledge bases
+
+## ✨ Key Features
+
+### 🛠 Developer-Friendly
+- Keep your existing Markdown/Git workflow
+- Full Markdown/MDX support
+- Easy custom component development
+- SEO optimization out of the box
+
+### 📝 Content Creator-Friendly
+- Modern block-based WYSIWYG editor
+- Real-time previews
+- Rich media support
+- Reusable content blocks
+
+### 🏢 Enterprise-Ready
+- SSO/SAML integration
+- Audit logs
+- Custom deployment options
+- Version control
+
+## 🌍 Going Global (Coming Soon)
+Built-in AI-powered translation:
```json
{
"translation": {
"auto_translate": true,
"provider": "anthropic",
- "model": "claude-3-sonnet-20240229",
- "targetLanguages": ["es", "fr", "de"],
- "excludedPaths": ["_meta.json"]
+ "targetLanguages": ["es", "fr", "de"]
}
}
```
-Run the translation command:
-
+## 🔄 Easy Migration (Coming Soon)
+Import your existing docs:
```bash
-npm run translate
+npx akiradocs-migrate import --from=source --to=mydocs
+# Supports: GitBook, Docusaurus, ReadTheDocs, Confluence, Notion
```
-## 📄 Licensing
-- **MIT License**: Free for open source and personal projects.
-- **Commercial License**: Available for enterprise features.
-
## 🤝 Join Our Community
+- [Live Demo](https://demo.akiradocs.ai)
+- [Documentation](https://docs.akiradocs.com)
- [Discord Community](https://discord.gg/zvYZukgeH2)
- [GitHub Discussions](https://github.com/akiradocs/discussions)
-- [Documentation](https://docs.akiradocs.com)
-- [Join the Waitlist](https://forms.gle/KunU4BGhToH4NJ1t7) → Early access to upcoming features
+- [Join Waitlist](https://forms.gle/KunU4BGhToH4NJ1t7) for early access
+
+## 📄 Licensing
+- Open Source (MIT License)
+- Commercial License available for enterprise features
---
- [Get Started](https://docs.akiradocs.ai/quickstart) •
- [Live Demo](https://demo.akiradocs.ai) •
- [Enterprise Trial](https://akiradocs.com/enterprise) (Coming Q1 2025)
+[Get Started](https://docs.akiradocs.ai/quickstart) •
+[Live Demo](https://demo.akiradocs.ai) •
+[Enterprise Trial](https://akiradocs.com/enterprise) (Coming Q1 2025)
diff --git a/gifs/star_the_repo.gif b/gifs/star_the_repo.gif
new file mode 100644
index 0000000..f6931fc
Binary files /dev/null and b/gifs/star_the_repo.gif differ
diff --git a/packages/akiradocs/.gitignore b/packages/akiradocs/.gitignore
new file mode 100644
index 0000000..33afb52
--- /dev/null
+++ b/packages/akiradocs/.gitignore
@@ -0,0 +1,62 @@
+# Dependencies
+/node_modules/
+.pnp
+.pnp.js
+.yarn/install-state.gz
+
+# Build
+dist
+.next
+out
+
+# Testing
+coverage
+
+# production
+/build
+
+# misc
+.DS_Store
+*.pem
+
+# debug
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+
+# local env files
+.env*.local
+
+# vercel
+.vercel
+
+# typescript
+*.tsbuildinfo
+next-env.d.ts
+
+.env
+.env.local
+.env.development.local
+.env.test.local
+.env.production.local
+
+# IDE
+.idea
+.vscode
+*.sublime-workspace
+
+.turbo/
+.next/
+**/node_modules/
+**/dist/
+**/dist/
+
+.DS_Store
+Thumbs.db
+
+template/
+
+*node_modules*
+
+million/
+wrangler/
\ No newline at end of file
diff --git a/packages/create-app/package.json b/packages/create-app/package.json
index 06c63f8..07e2af4 100644
--- a/packages/create-app/package.json
+++ b/packages/create-app/package.json
@@ -1,6 +1,6 @@
{
"name": "create-akiradocs",
- "version": "1.0.30",
+ "version": "1.0.33",
"description": "Create Akira Docs documentation sites with one command",
"main": "./dist/index.js",
"type": "module",
@@ -21,6 +21,7 @@
"files": [
"dist",
"template",
+ "editor",
"README.md",
"LICENSE"
],
diff --git a/packages/create-app/src/index.ts b/packages/create-app/src/index.ts
index 07c7929..647b1bf 100644
--- a/packages/create-app/src/index.ts
+++ b/packages/create-app/src/index.ts
@@ -77,8 +77,8 @@ async function promptConfigQuestions() {
{
type: 'confirm',
name: 'enableAutoTranslate',
- message: 'Would you like to enable automatic translation of content?',
- initial: true,
+ message: 'Would you like to enable automatic translation of content? (SETUP ENV for this)',
+ initial: false,
},
]);
@@ -141,6 +141,20 @@ async function updateEditorDependencies(targetDir: string) {
await writeFile(pkgJsonPath, JSON.stringify(pkgJson, null, 2));
}
+async function copyEditor(targetDir: string) {
+ const editorDir = path.join(__dirname, '../../editor');
+ const targetEditorDir = path.join(targetDir, 'editor');
+
+ try {
+ await copyDir(editorDir, targetEditorDir);
+ return true;
+ } catch (error) {
+ console.warn(chalk.yellow('\nWarning: Editor files not found. Skipping editor installation.'));
+ console.warn(chalk.yellow('You can install the editor later by following the documentation.\n'));
+ return false;
+ }
+}
+
async function main() {
const packageJsonPath = path.resolve(__dirname, '../package.json');
const packageJson = await readJson(packageJsonPath);
@@ -169,25 +183,25 @@ async function main() {
await updateConfig(targetDir, configAnswers);
if (editorResponse.includeEditor) {
- const editorDir = path.join(__dirname, '../../editor');
- const targetEditorDir = path.join(targetDir, 'editor');
- await copyDir(editorDir, targetEditorDir);
-
- await updateEditorDependencies(targetDir);
-
- const pkgJsonPath = path.join(targetDir, 'package.json');
- const pkgJson = JSON.parse(await readFile(pkgJsonPath, 'utf-8'));
- pkgJson.scripts = {
- ...pkgJson.scripts,
- 'dev:editor': 'cd editor && npm run dev',
- 'dev:docs': 'npm run dev',
- 'dev:all': 'concurrently "npm run dev:docs" "npm run dev:editor"',
- };
- pkgJson.devDependencies = {
- ...pkgJson.devDependencies,
- 'concurrently': '^8.0.0',
- };
- await writeFile(pkgJsonPath, JSON.stringify(pkgJson, null, 2));
+ const editorCopied = await copyEditor(targetDir);
+
+ if (editorCopied) {
+ await updateEditorDependencies(targetDir);
+
+ const pkgJsonPath = path.join(targetDir, 'package.json');
+ const pkgJson = JSON.parse(await readFile(pkgJsonPath, 'utf-8'));
+ pkgJson.scripts = {
+ ...pkgJson.scripts,
+ 'dev:editor': 'cd editor && npm run dev',
+ 'dev:docs': 'npm run dev',
+ 'dev:all': 'concurrently "npm run dev:docs" "npm run dev:editor"',
+ };
+ pkgJson.devDependencies = {
+ ...pkgJson.devDependencies,
+ 'concurrently': '^8.0.0',
+ };
+ await writeFile(pkgJsonPath, JSON.stringify(pkgJson, null, 2));
+ }
}
spinner.succeed(chalk.green('Project created successfully!'));
diff --git a/packages/create-app/tsup.config.ts b/packages/create-app/tsup.config.ts
index 978203a..b60cacf 100644
--- a/packages/create-app/tsup.config.ts
+++ b/packages/create-app/tsup.config.ts
@@ -2,6 +2,8 @@ import { defineConfig } from 'tsup';
import { chmod } from 'fs/promises';
import { copyDir, updatePackageJsonVersion } from './scripts/copyTemplate';
import { readFile } from 'fs/promises';
+import path from 'path';
+
export default defineConfig({
entry: ['src/index.ts'],
format: ['esm'],
@@ -16,9 +18,22 @@ export default defineConfig({
js: '#!/usr/bin/env node',
},
async onSuccess() {
- // Copy template before making the dist executable
-
+ // Copy main template
await copyDir('../akiradocs', './template');
+
+ // Copy main README and gifs folder
+ const rootDir = path.resolve(__dirname, '../..');
+ const mainReadmePath = path.join(rootDir, 'README.md');
+ const gifsFolder = path.join(rootDir, 'gifs');
+
+ // Copy main README to template
+ await copyDir(mainReadmePath, path.join('./template', 'README.md'));
+ await copyDir(mainReadmePath, path.join('./template', '.gitignore'));
+
+ // Copy gifs folder to template
+ await copyDir(gifsFolder, path.join('./template', 'gifs'));
+
+ // Update package.json version
const templatePackageJson = JSON.parse(
await readFile('./package.json', 'utf-8')
);