Ideas › Diff

Showing differences between revision 49 and 48.
+ === Pretty easy
+ * Add a "video" macro to quickly copy-paste videos from YouTube, Vimeo, etc. into pages
+ * Add a go-to search field to quickly jump to a given page
+
+ === The "tough ones"
+ * Investigate on page deletion
+ * √ A mechanism similar to [[http://www.oddmuse.org/cgi-bin/oddmuse/Kept_Pages|Kept Pages]] has been implemented in Bikini 2
+ * Implement cache-friendly output with [[http://fishbowl.pastiche.org/2002/10/21/http_conditional_get_for_rss_hackers/|HTTP "conditional GET"]]
+ * √ Rewrite {{{app.py}}} code to be compatible with WSGI to run with FastCGI and other environments
+ * Special [[WikiWord]] to load up custom styles, instead of current {{{s/user.css}}}. See [[UserStylesheet]]
+ * [[UserView]]
+
+ == Rust
+ Bikini code is accumulating some rust. Work done in [[http://lab.passiomatic.com/coldsweat/|Coldsweat]] taught me how to write a proper WSGI application and how to //combine// different applications into one. Instead Bikini started as a CGI script and grown into a WSGI application, and the approach is starting to show its limits.
+
+ Using SQLite in version 2 turned to be a good idea, on the other hand //not// using a template language but relying on string.Template made views busy without any compelling reason. This could be solved with Tempita which looks nice and could be added to Bikini like Creole without introducing any external dependency.
+
+ == Research
+ * [[TwitterIntegration]]
+ * Use Creole parser "HTML to Creole" feature to quickly create content from an existing web page, perhaps triggering the process via a //bookmarklet//
+ * [[http://helpful.knobs-dials.com/index.php/General_WSGI_notes|General WSGI notes]]
+
+ == RESTful or not?
+ * See //[[http://blog.steveklabnik.com/2011/07/03/nobody-understands-rest-or-http.html|Nobody understands REST or HTTP]]// by Steve Klabnik
+ * [[http://cafe.elharo.com/web/why-rest-failed/|Why REST Failed]]
+
+
+ == Authentication
+ Current way of block page editing from anonymous users via .htaccess isn't very flexible. You can only block entire directories or HTTP methods (POST, DELETE, etc.).
+
+ It seems not possible to tell Apache something like this: let the CGI script decide when trigger the HTTP authentication mechanism (Basic or Digest) and let the web server to manage user authentication. You are somewhat forced to either let Apache manage all the process or let CGI to deal with the entire process completely.
+
+ It is cool to delegate to Apache utilities to create and securely store user-password pairs somewhere on the filesystem but it would be better to be able to actually read them back when authenticated user is needed to perform a given operation.
+
+ So this [[http://packages.python.org/passlib/lib/passlib.apache.html|passlib Python package]] could help: "This module provides utilities for reading and writing Apache’s htpasswd and htdigest files; though the use of two helper classes."
+
+
+