{"id":26367471,"url":"https://github.com/rahulrmcoder/ai-text-processing-application","last_synced_at":"2026-04-06T08:01:14.571Z","repository":{"id":279971490,"uuid":"940611053","full_name":"RahulRmCoder/AI-Text-Processing-Application","owner":"RahulRmCoder","description":"A Django-based web application that uses the Groq API to provide text summarization and style-based text rewriting capabilities. Features user authentication and history tracking.","archived":false,"fork":false,"pushed_at":"2025-06-22T13:32:32.000Z","size":1251,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-22T14:34:47.317Z","etag":null,"topics":["css","django","django-application","django-rest-framework","generative-ai","groq-api","html","javascript","mongodb","mongoose"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RahulRmCoder.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-02-28T13:37:00.000Z","updated_at":"2025-06-22T13:32:35.000Z","dependencies_parsed_at":"2025-02-28T19:45:28.850Z","dependency_job_id":"22f518bd-1e00-4c3f-9682-a3d1ddb50b8d","html_url":"https://github.com/RahulRmCoder/AI-Text-Processing-Application","commit_stats":null,"previous_names":["rahulrmcoder/ai-text-processing-application"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/RahulRmCoder/AI-Text-Processing-Application","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RahulRmCoder%2FAI-Text-Processing-Application","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RahulRmCoder%2FAI-Text-Processing-Application/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RahulRmCoder%2FAI-Text-Processing-Application/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RahulRmCoder%2FAI-Text-Processing-Application/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RahulRmCoder","download_url":"https://codeload.github.com/RahulRmCoder/AI-Text-Processing-Application/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RahulRmCoder%2FAI-Text-Processing-Application/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31464101,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T21:22:52.476Z","status":"online","status_checked_at":"2026-04-06T02:00:07.287Z","response_time":112,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["css","django","django-application","django-rest-framework","generative-ai","groq-api","html","javascript","mongodb","mongoose"],"created_at":"2025-03-16T21:17:17.474Z","updated_at":"2026-04-06T08:01:14.550Z","avatar_url":"https://github.com/RahulRmCoder.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AI Text Processor\n\nA Django-based web application that uses the Gemini API to provide text summarization and style-based text rewriting capabilities. Features user authentication and history tracking.\n\n## Features\n\n- **Text Summarization**: Condense long texts into concise summaries\n- **Text Rewriting**: Rewrite content in different styles:\n  - Casual\n  - Formal\n  - Creative\n  - Academic\n  - Business\n- **User Authentication**: \n  - Secure signup and login\n  - User-specific processing history\n- **History Tracking**:\n  - View all your past text processing operations\n  - Clear history functionality\n- **Modern UI**: Responsive dark-themed interface\n- **Real-time Processing**: Asynchronous API calls with loading indicators\n\n## Screenshots\n\n![AI Text Processor Screenshot](OutputScreenshots/1.png)\n![AI Text Processor Screenshot](OutputScreenshots/2.png)\n![AI Text Processor Screenshot](OutputScreenshots/3.png)\n![AI Text Processor Screenshot](OutputScreenshots/4.png)\n![AI Text Processor Screenshot](OutputScreenshots/5.png)\n\n## Technologies Used\n\n- **Backend**: Django 5.1.6, Django REST Framework\n- **Frontend**: HTML5, CSS3, JavaScript, Bootstrap 5\n- **Database**: MongoDB\n- **Authentication**: Django Authentication System\n- **API Integration**: Gemini API (using the Gemini-1.5-flash)\n- **Development**: Python 3.11+\n\n## Prerequisites\n\nBefore you begin, ensure you have the following installed:\n- Python 3.11 or higher\n- pip (Python package manager)\n- A Gemini API key\n\n## Installation\n\n1. Clone the repository:\n   ```bash\n   git clone https://github.com/RahulRmCoder/AI-Text-Processing-Application.git\n   cd AI-Text-Processing-Application\n   ```\n\n2. Create and activate a virtual environment:\n   ```bash\n   python -m venv venv\n   \n   # On Windows\n   .\\venv\\Scripts\\activate\n   \n   # On macOS/Linux\n   source venv/bin/activate\n   ```\n\n3. Install the required packages:\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n4. Create a `.env` file in the root directory and add your Groq API key:\n   ```\n   GEMINI_API_KEY=your_api_key_here\n   ```\n\n5. Apply migrations:\n   ```bash\n   python manage.py migrate\n   ```\n\n## Running the Application\n\n1. Start the development server:\n   ```bash\n   python manage.py runserver\n   ```\n\n2. Open your browser and navigate to:\n   ```\n   http://127.0.0.1:8000/\n   ```\n\n3. Create an account or login to access all features.\n\n## Project Structure\n\n## Project Structure\n\n```\nai_summarizer/\n├── ai_summarizer/         # Main project settings\n│   ├── __init__.py\n│   ├── asgi.py\n│   ├── settings.py\n│   ├── urls.py\n│   └── wsgi.py\n├── summarizer/            # App directory\n│   ├── __init__.py\n│   ├── admin.py\n│   ├── apps.py\n│   ├── forms.py           # Form definitions for web UI\n│   ├── migrations/\n│   ├── models.py          # Data models including ChatHistory\n│   ├── serializers.py     # DRF serializers\n|   ├── services.py\n│   ├── templates/         # HTML templates\n│   │   ├── summarizer/    # App-specific templates\n│   │   │   ├── index.html     # Main app template\n│   │   │   ├── login.html     # Authentication templates\n│   │   │   ├── signup.html\n│   │   │   └── history.html   # User history page\n|   |   └── base.html      # Base template with dark theme\n│   ├── tests.py\n│   ├── urls.py            # App URL configurations\n│   └── views.py           # API and view controllers         \n├── .env                   # Environment variables (not tracked in git)\n├── .gitignore\n├── manage.py\n```\n\n## API Endpoints\n\n### Summarize Text\n- **URL**: `/api/summarize/`\n- **Method**: POST\n- **Request Body**:\n  ```json\n  {\n    \"text\": \"Your long text to summarize here...\"\n  }\n  ```\n- **Response**:\n  ```json\n  {\n    \"summary\": \"Summarized version of the text...\"\n  }\n  ```\n\n### Rewrite Text\n- **URL**: `/api/rewrite/`\n- **Method**: POST\n- **Request Body**:\n  ```json\n  {\n    \"text\": \"Your text to rewrite here...\",\n    \"style\": \"casual|formal|creative|academic|business\"\n  }\n  ```\n- **Response**:\n  ```json\n  {\n    \"rewritten_text\": \"The rewritten text in the specified style...\"\n  }\n  ```\n\n### User History\n- **URL**: `/api/history/`\n- **Method**: GET\n- **Authentication**: Required\n- **Response**: List of user's processing history entries\n\n## Web Interface Routes\n\n- **Home**: `/` - Main text processing interface\n- **Login**: `/login/` - User login page\n- **Signup**: `/signup/` - New user registration\n- **History**: `/history/` - View processing history (requires login)\n- **Logout**: `/logout/` - Log out current user\n\n## Customization\n\n### Modifying the Theme\n- Edit the CSS in the `\u003cstyle\u003e` section of the `base.html` file to customize the appearance\n- The application uses a dark theme by default, but this can be changed\n\n### Adding New Rewriting Styles\n1. Update the `index.html` template to include new options in the style selector\n2. Modify the `RewriteSerializer` in `serializers.py` to validate the new styles\n3. Test with the Groq API to ensure it can handle the new style requests\n\n### Timezone Settings\n- The application displays timestamps in your local timezone\n- You can modify the timezone in `settings.py` using the `TIME_ZONE` setting\n\n## Deployment\n\nFor production deployment:\n1. Set `DEBUG = False` in `settings.py`\n2. Configure a production-ready web server (e.g., Nginx, Apache)\n3. Use a WSGI server like Gunicorn\n4. Ensure your `.env` file with the API key is securely set up\n5. Consider using HTTPS for secure API communication\n6. For production, consider using a more robust database like PostgreSQL\n\n## Contributing\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/amazing-feature`)\n3. Commit your changes (`git commit -m 'Add some amazing feature'`)\n4. Push to the branch (`git push origin feature/amazing-feature`)\n5. Open a Pull Request\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE file for details.\n\n## Acknowledgements\n\n- [Django](https://www.djangoproject.com/)\n- [Django REST Framework](https://www.django-rest-framework.org/)\n- [Bootstrap](https://getbootstrap.com/)\n- [Groq API](https://console.groq.com/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frahulrmcoder%2Fai-text-processing-application","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frahulrmcoder%2Fai-text-processing-application","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frahulrmcoder%2Fai-text-processing-application/lists"}