All Projects → bdoms → gae_blog

bdoms / gae_blog

Licence: other
GAE Blog is a minimalist blog meant to be used with Google App Engine.

Programming Languages

python
139335 projects - #7 most used programming language
HTML
75241 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to gae blog

Nds
A Go (golang) Google App Engine datastore package with strongly consistent caching.
Stars: ✭ 154 (+862.5%)
Mutual labels:  appengine
Golang Samples
Sample apps and code written for Google Cloud in the Go programming language.
Stars: ✭ 3,088 (+19200%)
Mutual labels:  appengine
gae-vue-webapp2-starter
A simple GAE Vue Webapp2 starter project.
Stars: ✭ 17 (+6.25%)
Mutual labels:  appengine
Elixir Runtime
The community-supported runtime for Elixir on Google App Engine.
Stars: ✭ 158 (+887.5%)
Mutual labels:  appengine
Appengine Maven Repository
Free Private Maven repositories hosted on Google App-Engine, backed by Google Cloud Storage and deployed in less than 5 minutes.
Stars: ✭ 201 (+1156.25%)
Mutual labels:  appengine
roller
Dice roller written in Go and Javascript to run on Google Appengine
Stars: ✭ 26 (+62.5%)
Mutual labels:  appengine
Ruby Docker
Ruby runtime for Google Cloud Platform
Stars: ✭ 122 (+662.5%)
Mutual labels:  appengine
flem
Flem is a local emulator for the App Engine Flexible Environment.
Stars: ✭ 20 (+25%)
Mutual labels:  appengine
Rooms
Ephemeral conference rooms powered by Twilio and Google App Engine
Stars: ✭ 234 (+1362.5%)
Mutual labels:  appengine
luceneappengine
This project provides a directory useful to build Lucene and Google App Engine powered applications
Stars: ✭ 16 (+0%)
Mutual labels:  appengine
Marvin
A go-kit HTTP server for the App Engine Standard Environment
Stars: ✭ 164 (+925%)
Mutual labels:  appengine
Datastore
(AE|Cloud) Datastore Wrapper
Stars: ✭ 198 (+1137.5%)
Mutual labels:  appengine
deploy-appengine
A GitHub Action that deploys source code to Google App Engine.
Stars: ✭ 184 (+1050%)
Mutual labels:  appengine
Fluentular
Fluentular is a Fluentd regular expression editor
Stars: ✭ 154 (+862.5%)
Mutual labels:  appengine
go-poly-tenant
Go + Polymer MultiTenancy on AppEngine
Stars: ✭ 22 (+37.5%)
Mutual labels:  appengine
Yawp
Kotlin/Java API framework for Google Appengine
Stars: ✭ 136 (+750%)
Mutual labels:  appengine
compojure-appengine-sample
Sample Compojure app with deployment to Google App Engine
Stars: ✭ 12 (-25%)
Mutual labels:  appengine
Processor
Ontology-driven Linked Data processor and server for SPARQL backends. Apache License.
Stars: ✭ 54 (+237.5%)
Mutual labels:  appengine
go-firebase
AppEngine friendly Firebase for Go (Golang)
Stars: ✭ 26 (+62.5%)
Mutual labels:  appengine
GAEPyPI
PyPI private package index on Google App Engine
Stars: ✭ 31 (+93.75%)
Mutual labels:  appengine

Copyright © 2010-2015, Brendan Doms
Licensed under the MIT license

GAE Blog is a project to provide a bare-bones blogging solution for Google App Engine that makes no assumptions, and is easy to integrate with existing apps.

Setup for Integrating with Your Project

In your pre-existing application add this project as a submodule, like so:

git submodule add git://github.com/bdoms/gae_blog.git gae_blog

Next, you need to initialize and update the submodule to get all the submodules that exist within the gae_blog project:

cd gae_blog
git submodule init
git submodule update

Then repeat for your project:

cd ..
git submodule init
git submodule update

Finally, you need to merge the libraries and handlers from the example GAE Blog app.yaml into your project's top level app.yaml. After doing that, starting the development server and going to /blog will be handled by gae_blog.

Before deploying to production, be sure to replace the secret_key in the blog.py script with randomized output for security. It's recommended that you copy this file into your own project so that you can modify it and commit the changes. Note that this script is also the place where you need to define your URL routes.

Go to /blog/admin to configure your blog, post to it, and moderate comments.

Setup for Using As a Parent Project

If you just want the blog to be the only part of your website, the process is fairly similar. Just clone (or fork) the repository and you should be good.

Managing Multiple Blogs

If you want to use GAE Blog for multiple blogs within the same project/domain, you just have to decide on a relative URL for each one (/blog by default) and modify these things:

  • add handlers for it to your app.yaml as mentioned above
  • add it to the BLOG_URLS list in blog.py
  • create each blog with its respective URL from /blog/admin

Using a Custom Base Template

You can obviously modify the included base template as much as you want, but in order to avoid redundancy, if you have one that you'd like to use, then all you have to do is modify the "Base Template" configuration option on the blog admin page (at /blog/admin) with a path relative to your project (i.e. the parent directory of the gae_blog folder). For example, if your directory structure looks like this:

  • your_project
    • gae_blog
    • your_templates
      • your_base_template.html

You would enter "your_templates/your_base_template.html" as the relative path. However, if you leave that option blank, then the default_base.html file will be used instead.

Running Tests

Make sure that the path to the App Engine SDK is in the PYTHONPATH environment variable. Then, running tests is simple:

python tests

Scheduling Posts for the Future

There is some support for scheduling posts to be published in the future. As noted on the admin post page, this is accomplished simply by checking the "published" checkbox and entering a future timestamp. However, please note that it is possible for pages including a yet-to-be-published post - such as the index page, author pages (if enabled), and the RSS feed - to be put into memcache after the post has been saved but before it has been published. It is therefore recommended that you manually flush the cache if the post appearing in those places is time sensitive.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].