diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..4ead3b1 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,45 @@ +name: Build +on: + push: + branches: + - main + +permissions: + contents: write # Add this to allow pushing to gh-pages + +jobs: + build: + runs-on: ubuntu-latest + concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + steps: + - uses: actions/checkout@v2 + - name: build + env: + GITHUB_PAT: ${{ github.token }} + REPO: "getzola/zola" + VERSION: "latest" + MATCH: "zola-.+-x86_64-unknown-linux-gnu.tar.gz$" + RENAME: "zola.tgz" + shell: bash + run: | + curl -sL --fail \ + -H "Accept: application/vnd.github.v3+json" \ + -H "Authorization: Bearer ${GITHUB_PAT}" \ + "https://api.github.com/repos/${REPO}/releases/${VERSION}" \ + | jq -r ".assets | .[] | select(.name | test(\"${MATCH}\")) | .url" \ + | tee asset.url + curl -sL --fail \ + -H "Accept: application/octet-stream" \ + -H "Authorization: Bearer ${GITHUB_PAT}" \ + -o "${RENAME}" \ + "$(cat asset.url)" + tar -zxvf zola.tgz + chmod +x zola + ./zola build + - name: Deploy to GitHub Pages + uses: peaceiris/actions-gh-pages@v3 + if: ${{ github.ref == 'refs/heads/main' }} + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./public diff --git a/README.md b/README.md index 0a69aef..b5bbbe4 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,40 @@ -# SinSo-API-Web -Official website for the SinSo API +# SinSo API Website + +Official landing page for **SinSo API** - the largest open-source Sinhala Songs Lyrics API. + +## 🌐 About + +This is the static website repository for SinSo API, providing information about the API, its features, endpoints, and how to get started. The website serves as the main entry point for developers interested in integrating Sinhala song lyrics into their applications. + +## 🚀 Features + +- Clean and modern design +- Responsive layout +- Comprehensive API documentation overview +- Feature highlights and benefits +- API endpoints reference +- Contact and contribution information +- Copyright and legal notices + +## 🤝 Contributing + +Contributions are welcome! Feel free to: +- Report bugs or issues +- Suggest improvements to the website design +- Submit pull requests for fixes or enhancements + +## 📧 Contact + +For questions or support, please reach out through: +- Email: [vishal@vishalrashmika.com] +- GitHub: [Open an issue](https://github.com/SinSo-API/SinSo-API/issues) + +## ☕ Support + +If you find this project helpful, consider supporting us: + +[](https://www.buymeacoffee.com/vishalrashmika/) + +--- + +© 2025 SinSo API. All rights reserved. | All song lyrics are property of their respective artists and creators. \ No newline at end of file diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..9a31cf0 --- /dev/null +++ b/config.toml @@ -0,0 +1,15 @@ +base_url = "./" +title = "SinSo API" +description = "Largest Open-Source Sinhala Songs Lyrics API – Fast, Reliable & Ready for Integration" +compile_sass = false +build_search_index = false + +[extra] +# Contact Information +email_contact = "vishal@vishalrashmika.com" + +# Social Links +github = "https://github.com/SinSo-API" + +# External Links +docs_url = "https://api.sinso.vishalrashmika.com/v1/docs/" diff --git a/content/_index.md b/content/_index.md new file mode 100644 index 0000000..29f47a2 --- /dev/null +++ b/content/_index.md @@ -0,0 +1,4 @@ ++++ +title = "SinSo API" +description = "Largest Open-Source Sinhala Songs Lyrics API – Fast, Reliable & Ready for Integration" ++++ diff --git a/netlify.toml b/netlify.toml new file mode 100644 index 0000000..8a02549 --- /dev/null +++ b/netlify.toml @@ -0,0 +1,18 @@ +[build] +# This assumes that the Zola site is in a docs folder. If it isn't, you don't need +# to have a `base` variable but you do need the `publish` and `command` variables. +# base = "" + publish = "public" + command = "zola build" + +[build.environment] +# Set the version name that you want to use and Netlify will automatically use it. + ZOLA_VERSION = "0.17.0" + +# The magic for deploying previews of branches. +# We need to override the base url with whatever url Netlify assigns to our +# preview site. We do this using the Netlify environment variable +# `$DEPLOY_PRIME_URL`. + +[context.deploy-preview] + command = "zola build --base-url $DEPLOY_PRIME_URL" \ No newline at end of file diff --git a/static/style.css b/static/style.css new file mode 100644 index 0000000..0aeef24 --- /dev/null +++ b/static/style.css @@ -0,0 +1,335 @@ +/* Reset and Base Styles */ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; + line-height: 1.6; + color: #333; + background-color: #fff; +} + +.container { + max-width: 1200px; + margin: 0 auto; + padding: 0 20px; +} + +/* Header */ +.header { + display: flex; + justify-content: space-between; + align-items: center; + padding: 20px 0; + border-bottom: 1px solid #e5e5e5; +} + +.logo h1 { + font-size: 24px; + font-weight: 700; + color: #2563eb; +} + +.nav { + display: flex; + gap: 30px; + align-items: center; +} + +.nav a { + text-decoration: none; + color: #333; + font-weight: 500; + transition: color 0.3s; +} + +.nav a:hover { + color: #2563eb; +} + +/* Buttons */ +.btn-primary, +.btn-secondary { + display: inline-block; + padding: 12px 24px; + text-decoration: none; + border-radius: 6px; + font-weight: 600; + transition: all 0.3s; +} + +.btn-primary { + background-color: #2563eb; + color: #fff; +} + +.btn-primary:hover { + background-color: #1d4ed8; +} + +.btn-secondary { + background-color: transparent; + color: #2563eb; + border: 2px solid #2563eb; +} + +.btn-secondary:hover { + background-color: #2563eb; + color: #fff; +} + +/* Hero Section */ +.hero { + text-align: center; + padding: 80px 0; +} + +.hero-title { + font-size: 56px; + font-weight: 700; + margin-bottom: 16px; + color: #111; +} + +.hero-subtitle { + font-size: 24px; + color: #666; + margin-bottom: 24px; + font-style: italic; +} + +.hero-description { + font-size: 18px; + color: #555; + max-width: 700px; + margin: 0 auto 40px; +} + +.hero-actions { + display: flex; + gap: 20px; + justify-content: center; +} + +/* Section */ +.section { + padding: 60px 0; + border-bottom: 1px solid #e5e5e5; +} + +.section h2 { + font-size: 36px; + font-weight: 700; + margin-bottom: 24px; + color: #111; +} + +.section > p { + font-size: 18px; + color: #555; + margin-bottom: 16px; + max-width: 800px; +} + +/* Features Grid */ +.features-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); + gap: 30px; + margin-top: 40px; +} + +.feature-card { + padding: 24px; + border: 1px solid #e5e5e5; + border-radius: 8px; + background-color: #fafafa; +} + +.feature-card h3 { + font-size: 20px; + font-weight: 600; + margin-bottom: 12px; + color: #2563eb; +} + +.feature-card p { + font-size: 16px; + color: #555; + line-height: 1.6; +} + +/* Benefits Grid */ +.benefits-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: 30px; + margin-top: 40px; +} + +.benefit { + text-align: center; + padding: 24px; +} + +.benefit h3 { + font-size: 22px; + font-weight: 600; + margin-bottom: 12px; + color: #2563eb; +} + +.benefit p { + font-size: 16px; + color: #555; +} + +/* Steps */ +.steps { + margin-top: 40px; +} + +.step { + display: flex; + gap: 20px; + margin-bottom: 30px; + align-items: flex-start; +} + +.step-number { + display: inline-flex; + align-items: center; + justify-content: center; + width: 40px; + height: 40px; + background-color: #2563eb; + color: #fff; + border-radius: 50%; + font-weight: 700; + font-size: 18px; + flex-shrink: 0; +} + +.step-content h3 { + font-size: 20px; + font-weight: 600; + margin-bottom: 8px; + color: #111; +} + +.step-content p { + font-size: 16px; + color: #555; +} + +/* Contact Grid */ +.contact-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: 30px; + margin-top: 40px; +} + +.contact-item h3 { + font-size: 20px; + font-weight: 600; + margin-bottom: 12px; + color: #2563eb; +} + +.contact-item p { + font-size: 16px; + color: #555; + margin-bottom: 8px; +} + +.contact-item a { + color: #2563eb; + text-decoration: none; +} + +.contact-item a:hover { + text-decoration: underline; +} + +/* CTA Section */ +.cta-section { + text-align: center; + background-color: #f8fafc; + padding: 80px 20px; +} + +.cta-section h2 { + font-size: 40px; + margin-bottom: 16px; +} + +.cta-section > p { + font-size: 20px; + margin: 0 auto 40px; +} + +.cta-actions { + display: flex; + gap: 20px; + justify-content: center; + flex-wrap: wrap; +} + +/* Footer */ +.footer { + text-align: center; + padding: 40px 0; + color: #666; + font-size: 14px; +} + +/* Responsive */ +@media (max-width: 768px) { + .header { + flex-direction: column; + gap: 20px; + } + + .nav { + flex-direction: column; + gap: 15px; + } + + .hero-title { + font-size: 36px; + } + + .hero-subtitle { + font-size: 20px; + } + + .hero-actions { + flex-direction: column; + align-items: center; + } + + .section h2 { + font-size: 28px; + } + + .features-grid { + grid-template-columns: 1fr; + } + + .benefits-grid { + grid-template-columns: 1fr; + } + + .contact-grid { + grid-template-columns: 1fr; + } + + .cta-actions { + flex-direction: column; + align-items: center; + } +} diff --git a/templates/base.html b/templates/base.html new file mode 100644 index 0000000..f098d73 --- /dev/null +++ b/templates/base.html @@ -0,0 +1,13 @@ + + +
+ + +Largest Open-Source Sinhala Songs Lyrics API
+Welcome to SinSo-API, the home of the largest open-source Sinhala Songs Lyrics API. This projects goal is to provide fast, reliable, and easy access to Sinhala song lyrics for developers, music apps, and personal projects.
+SinSo API is the largest open-source Sinhala Songs Lyrics API, built to help developers integrate Sinhala song lyrics into their applications with minimal effort. Whether you're building music apps, chatbots, web applications, or personal projects, SinSo API provides the tools you need to access thousands of Sinhala song lyrics.
+Our API is designed with simplicity and reliability at its core, offering fast access to comprehensive Sinhala lyrics data, intuitive endpoints, and a lightweight Spring Boot backend that's completely free and open-source.
+Access thousands of Sinhala song lyrics through our comprehensive database. The most extensive open-source collection of Sinhala lyrics available for developers.
+Built on RESTful principles with intuitive endpoints that follow industry best practices. Easy-to-understand URL structures make integration straightforward and quick.
+Powered by Spring Boot backend for optimal performance. Get instant responses with minimal overhead, keeping your applications fast and responsive.
+All responses are returned in clean, structured JSON format, making it simple to parse and integrate lyrics data into your applications across any platform.
+Retrieve comprehensive artist data including all their songs. Perfect for building artist profiles and music catalogs in your applications.
+Access detailed information about songs including metadata, artist information, and associated lyrics for complete music data integration.
+Completely free to use with no hidden costs. Open-source codebase on GitHub allows you to contribute, customize, and understand how it works.
+Developer-friendly API structure designed for quick and easy integration. Start making API calls in minutes with minimal setup required.
+Provided for educational, research, and non-commercial purposes to promote Sinhala music and culture while respecting artist rights.
+Versatile API endpoints for artists, songs, and lyrics retrieval. Access data at different levels based on your application needs.
+Regularly updated with new features and improvements. More endpoints and enhanced documentation are continuously being added.
+Welcome contributions from developers. Help grow the largest Sinhala lyrics resource by contributing data, features, or improvements.
+The most comprehensive open-source Sinhala lyrics database available, covering thousands of songs across genres.
+Simple, intuitive API design makes integration quick and painless. Start building in minutes with clear documentation.
+Completely free to use with no licensing fees. Open-source codebase allows customization and community contributions.
+Help promote Sinhala music and culture while respecting artist rights and intellectual property.
+SinSo API provides simple and intuitive REST endpoints for accessing Sinhala song lyrics data:
+Retrieve all artists available in the database
+Get details of a specific artist including their songs
+List all songs available in the database
+Retrieve details of a specific song including metadata
+Get lyrics content by lyric ID
+More endpoints and documentation coming soon!
+We welcome contributions and feedback! Whether you want to contribute lyrics data, report bugs, suggest features, or need support, we're here to help.
++ GitHub - Contribute, report issues, or star the project +
+Important: All song lyrics are the intellectual property of their respective artists, composers, and publishers. SinSo API does not claim ownership of any lyrical content.
+Lyrics are provided for educational, research, and non-commercial purposes. Commercial use may require proper licensing. Please respect intellectual property rights and give proper attribution to artists.
+If you find SinSo API helpful, consider supporting us! Your support helps keep the API running and updated with new features.
+ +