This is an automated email from the ASF dual-hosted git repository.

machristie pushed a commit to branch main
in repository 
https://gitbox.apache.org/repos/asf/airavata-cookiecutter-django-app.git

commit 3f30491240dcc71f22db336473e584e75cc02cb2
Author: Marcus Christie <machris...@apache.org>
AuthorDate: Thu May 27 11:51:28 2021 -0400

    initial commit
---
 README.md                                                 |  0
 cookiecutter.json                                         | 10 ++++++++++
 {{cookiecutter.project_slug}}/.gitignore                  |  7 +++++++
 {{cookiecutter.project_slug}}/MANIFEST.in                 |  2 ++
 {{cookiecutter.project_slug}}/README.md                   | 15 +++++++++++++++
 {{cookiecutter.project_slug}}/pyproject.toml              |  6 ++++++
 {{cookiecutter.project_slug}}/setup.cfg                   | 15 +++++++++++++++
 {{cookiecutter.project_slug}}/setup.py                    |  3 +++
 .../{{cookiecutter.project_slug}}/__init__.py             |  0
 .../{{cookiecutter.project_slug}}/admin.py                |  3 +++
 .../{{cookiecutter.project_slug}}/apps.py                 |  7 +++++++
 .../{{cookiecutter.project_slug}}/models.py               |  3 +++
 .../templates/{{cookiecutter.project_slug}}/home.html     | 11 +++++++++++
 .../{{cookiecutter.project_slug}}/tests.py                |  3 +++
 .../{{cookiecutter.project_slug}}/urls.py                 |  9 +++++++++
 .../{{cookiecutter.project_slug}}/views.py                | 11 +++++++++++
 16 files changed, 105 insertions(+)

diff --git a/README.md b/README.md
new file mode 100644
index 0000000..e69de29
diff --git a/cookiecutter.json b/cookiecutter.json
new file mode 100644
index 0000000..b162761
--- /dev/null
+++ b/cookiecutter.json
@@ -0,0 +1,10 @@
+{
+  "project_name": "My Custom Django App",
+  "project_slug": "{{ cookiecutter.project_name | slugify(separator='_')}}",
+  "project_short_description": "Custom Django app with everything needed to be 
installed in the airavata-django-portal",
+  "app_config_class_name": "{{ cookiecutter.project_name | title | replace(' 
', '') }}",
+  "version": "0.1.0",
+  "_copy_without_render": [
+      "*.html"
+  ]
+}
diff --git a/{{cookiecutter.project_slug}}/.gitignore 
b/{{cookiecutter.project_slug}}/.gitignore
new file mode 100644
index 0000000..4f6cd5f
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/.gitignore
@@ -0,0 +1,7 @@
+venv
+*.egg-info
+*.pyc
+.vscode
+build
+dist
+*.egg
diff --git a/{{cookiecutter.project_slug}}/MANIFEST.in 
b/{{cookiecutter.project_slug}}/MANIFEST.in
new file mode 100644
index 0000000..d402524
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/MANIFEST.in
@@ -0,0 +1,2 @@
+recursive-include {{ cookiecutter.project_slug }}/static *
+recursive-include {{ cookiecutter.project_slug }}/templates *
diff --git a/{{cookiecutter.project_slug}}/README.md 
b/{{cookiecutter.project_slug}}/README.md
new file mode 100644
index 0000000..d82e62a
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/README.md
@@ -0,0 +1,15 @@
+# {{ cookiecutter.project_name }}
+
+## Getting Started
+
+1. Follow the instructions for installing the
+   [Airavata Django Portal](https://github.com/apache/airavata-django-portal)
+2. With the Airavata Django Portal virtual environment activated, clone this
+   repo and install it into the portal's virtual environment
+
+   ```
+   cd {{ cookiecutter.project_slug }}
+   pip install -e .
+   ```
+
+3. Start (or restart) the Django Portal server.
diff --git a/{{cookiecutter.project_slug}}/pyproject.toml 
b/{{cookiecutter.project_slug}}/pyproject.toml
new file mode 100644
index 0000000..374b58c
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/pyproject.toml
@@ -0,0 +1,6 @@
+[build-system]
+requires = [
+    "setuptools>=42",
+    "wheel"
+]
+build-backend = "setuptools.build_meta"
diff --git a/{{cookiecutter.project_slug}}/setup.cfg 
b/{{cookiecutter.project_slug}}/setup.cfg
new file mode 100644
index 0000000..cbe2c59
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/setup.cfg
@@ -0,0 +1,15 @@
+[metadata]
+name = {{ cookiecutter.project_slug }}
+version = {{ cookiecutter.version }}
+description = {{ cookiecutter.project_short_description }}
+
+[options]
+packages = find:
+# Include data files as specified in MANIFEST.in
+include_package_data = True
+install_requires =
+    django >= 2.2
+
+[options.entry_points]
+airavata.djangoapp =
+    {{ cookiecutter.project_slug }} = {{ cookiecutter.project_slug }}.apps:{{ 
cookiecutter.app_config_class_name }}
diff --git a/{{cookiecutter.project_slug}}/setup.py 
b/{{cookiecutter.project_slug}}/setup.py
new file mode 100644
index 0000000..b908cbe
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/setup.py
@@ -0,0 +1,3 @@
+import setuptools
+
+setuptools.setup()
diff --git 
a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/__init__.py 
b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git 
a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/admin.py 
b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/admin.py
new file mode 100644
index 0000000..8c38f3f
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/admin.py
@@ -0,0 +1,3 @@
+from django.contrib import admin
+
+# Register your models here.
diff --git 
a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/apps.py 
b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/apps.py
new file mode 100644
index 0000000..0055edc
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/apps.py
@@ -0,0 +1,7 @@
+from django.apps import AppConfig
+
+
+class {{ cookiecutter.app_config_class_name }}(AppConfig):
+    name = '{{ cookiecutter.project_slug }}'
+    label = name
+    verbose_name = "{{ cookiecutter.project_name }}"
diff --git 
a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/models.py 
b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/models.py
new file mode 100644
index 0000000..71a8362
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/models.py
@@ -0,0 +1,3 @@
+from django.db import models
+
+# Create your models here.
diff --git 
a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/templates/{{cookiecutter.project_slug}}/home.html
 
b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/templates/{{cookiecutter.project_slug}}/home.html
new file mode 100644
index 0000000..523a4e0
--- /dev/null
+++ 
b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/templates/{{cookiecutter.project_slug}}/home.html
@@ -0,0 +1,11 @@
+{% extends 'base.html' %}
+
+{% block content %}
+<div class="main-content-wrapper">
+    <main class="main-content">
+        <div class="container-fluid">
+            <h1>Welcome to {{ project_name }}</h1>
+        </div>
+    </main>
+</div>
+{% endblock content %}
diff --git 
a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/tests.py 
b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/tests.py
new file mode 100644
index 0000000..7ce503c
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/tests.py
@@ -0,0 +1,3 @@
+from django.test import TestCase
+
+# Create your tests here.
diff --git 
a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/urls.py 
b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/urls.py
new file mode 100644
index 0000000..8bc72c8
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/urls.py
@@ -0,0 +1,9 @@
+
+from django.urls import path
+
+from . import views
+
+app_name = '{{ cookiecutter.project_slug }}'
+urlpatterns = [
+    path('home/', views.home, name='home'),
+]
diff --git 
a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/views.py 
b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/views.py
new file mode 100644
index 0000000..45028b8
--- /dev/null
+++ b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/views.py
@@ -0,0 +1,11 @@
+from django.contrib.auth.decorators import login_required
+from django.http import HttpResponse, HttpResponseNotFound
+from django.shortcuts import render
+
+# Create your views here.
+
+@login_required
+def home(request):
+    return render(request, "{{ cookiecutter.project_slug }}/home.html", {
+        'project_name': "{{ cookiecutter.project_name }}"
+    })

Reply via email to