<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dw="https://www.dreamwidth.org">
  <id>tag:dreamwidth.org,2018-03-01:3348208</id>
  <title>fanarchive</title>
  <subtitle>Archives Everyone's Stories Online Permanently</subtitle>
  <author>
    <name>Archives Everyone's Stories Online Permanently</name>
  </author>
  <link rel="alternate" type="text/html" href="https://fanarchive.dreamwidth.org/"/>
  <link rel="self" type="text/xml" href="https://fanarchive.dreamwidth.org/data/atom"/>
  <updated>2018-08-25T01:57:43Z</updated>
  <dw:journal username="fanarchive" type="community"/>
  <entry>
    <id>tag:dreamwidth.org,2018-03-01:3348208:2447</id>
    <author>
      <name>Quivo</name>
    </author>
    <dw:poster user="quivo"/>
    <link rel="alternate" type="text/html" href="https://fanarchive.dreamwidth.org/2447.html"/>
    <link rel="self" type="text/xml" href="https://fanarchive.dreamwidth.org/data/atom/?itemid=2447"/>
    <title>Weekly update (??)</title>
    <published>2018-08-25T01:57:43Z</published>
    <updated>2018-08-25T01:57:43Z</updated>
    <category term="coding"/>
    <category term="news"/>
    <dw:security>public</dw:security>
    <dw:reply-count>0</dw:reply-count>
    <content type="html">Posted by: &lt;span lj:user='quivo' style='white-space: nowrap;' class='ljuser'&gt;&lt;a href='https://quivo.dreamwidth.org/profile'&gt;&lt;img src='https://www.dreamwidth.org/img/silk/identity/user.png' alt='[personal profile] ' width='17' height='17' style='vertical-align: text-bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='https://quivo.dreamwidth.org/'&gt;&lt;b&gt;quivo&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Coding progress:&lt;/h3&gt;

&lt;p&gt;So I'm refactoring. AGAIN. If you want to take a look at how that's going, all that work is on the &lt;a href="https://github.com/quivop/fanarchive/tree/refactor3" title="refactor 3 branch on fanarchive repository"&gt;refactor3 branch on the github repo&lt;/a&gt;.&lt;/p&gt;

&lt;h4&gt;Why did you decide to do this?&lt;/h4&gt;

&lt;p&gt;Got tired of the way the project was currently structured, and I was going to need to change major shit anyway (injecting a custom user model into a Django project after you've done the very first migration basically requires weird project surgery), &lt;em&gt;and&lt;/em&gt; none of the data I've been fucking with in the test db was worth wringing my hands over preserving. &lt;/p&gt;

&lt;h4&gt;What did you actually &lt;strong&gt;do&lt;/strong&gt;??&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;changed &lt;code&gt;fanarchive&lt;/code&gt; app name to &lt;code&gt;fanfic&lt;/code&gt;. Already thinking about changing it to &lt;code&gt;core&lt;/code&gt; because that's what it's effectively become, but whatever.&lt;/li&gt;
&lt;li&gt;inserted a custom user model under a separate app. Basically just installed &lt;code&gt;django-authtools&lt;/code&gt;, inherited from their well-done NamedUser, and called it a day. Separate app because I intend the archive-specific user logic (pseuds, profiles etc) to be separate from the user authentication logic (login, email &amp;amp; password).&lt;/li&gt;
&lt;li&gt;inserted custom app for handling pseuds, then changed my mind and shoved the Pseud model under the core &lt;code&gt;fanfic&lt;/code&gt; app.&lt;/li&gt;
&lt;li&gt;decided to go on a jaunt into many-to-many land by defining the relationship between Pseuds and Fics with a couple special models&lt;/li&gt;
&lt;li&gt;spent a possibly embarrassing amount of time playing with the db API, trying to make sure said defined relationship works as expected when creating Pseuds, Users, AuthorGroups and Authorships&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;What's next?&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;make sure deleting Authorships, Users, Pseuds and AuthorGroups also works as expected&lt;/li&gt;
&lt;li&gt;add &lt;code&gt;public_id&lt;/code&gt;field to Pseud model and make &lt;code&gt;pseud_name&lt;/code&gt; and &lt;code&gt;public_id&lt;/code&gt; unique together (want this for anon pseud stuff)&lt;/li&gt;
&lt;li&gt;add &lt;code&gt;create_pseud&lt;/code&gt; function to the Pseud model. May also want to stick &lt;code&gt;modify_pseud&lt;/code&gt; and &lt;code&gt;delete_pseud&lt;/code&gt; in there.&lt;/li&gt;
&lt;li&gt;put together basic data factory functions so I can generate sample fics for various test and demo purposes&lt;/li&gt;
&lt;li&gt;TESTS. Main priority is:
&lt;ul&gt;
&lt;li&gt;make sure obvious operations work as expected&lt;/li&gt;
&lt;li&gt;test custom functions&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;FORMS (need these for basically every CRUD operation for every model involved)&lt;/li&gt;
&lt;li&gt;views + templates (rough, basic, but all the CRUD stuff needs this covered. Will lean heavily on the class-based views &amp;amp; default forms in &lt;code&gt;django-authtools&lt;/code&gt; where possible)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most likely, I will stop to make a giant pull request when factories and tests are in good shape, so that the work of making views and forms for everything that needs it can be in its own branch. Depending on how busy/tired I am this weekend, I &lt;em&gt;think&lt;/em&gt; I should be able to do the custom functions, if not tie off the refactoring branch entirely.&lt;/p&gt;
&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=fanarchive&amp;ditemid=2447" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2018-03-01:3348208:2134</id>
    <author>
      <name>Quivo</name>
    </author>
    <dw:poster user="quivo"/>
    <link rel="alternate" type="text/html" href="https://fanarchive.dreamwidth.org/2134.html"/>
    <link rel="self" type="text/xml" href="https://fanarchive.dreamwidth.org/data/atom/?itemid=2134"/>
    <title>Ghost update</title>
    <published>2018-08-17T17:17:34Z</published>
    <updated>2018-08-17T17:17:34Z</updated>
    <category term="news"/>
    <dw:mood>accomplished</dw:mood>
    <dw:security>public</dw:security>
    <dw:reply-count>3</dw:reply-count>
    <content type="html">Posted by: &lt;span lj:user='quivo' style='white-space: nowrap;' class='ljuser'&gt;&lt;a href='https://quivo.dreamwidth.org/profile'&gt;&lt;img src='https://www.dreamwidth.org/img/silk/identity/user.png' alt='[personal profile] ' width='17' height='17' style='vertical-align: text-bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='https://quivo.dreamwidth.org/'&gt;&lt;b&gt;quivo&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;So I took a hiatus from this because I had to move out of state suddenly. I've time to work on this again now, and I'm just going to bite the bullet and stop treating this as a Special Fandom Community Project that needs to be taken mega seriously. Realistically, what I want out of this is a multi-author story archive that works for me (easy to host myself, tags and categories that make more sense than AO3, good ui for posting works), so that's what I'm currently aiming for.&lt;/p&gt;

&lt;p&gt;Obviously this is still an open source project, so if you want to &lt;a href="https://www.dreamwidth.org/inbox/compose?user=quivo" title="PM quivo at dreamwidth"&gt;make suggestions&lt;/a&gt;, poke at &lt;a href="https://github.com/quivop/fanarchive" title="fanarchive repository at github"&gt;the source&lt;/a&gt; and contribute, or fork the repo and grimly change all the fonts, knock yourself out.&lt;/p&gt;

&lt;h3&gt;Current to do list:&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;pick a goddamn license, seriously. &lt;/li&gt;
&lt;li&gt;accept that I will be coding an admin interface (long story short, I looked into the abyss that is Django admin plugins and customization and decided I wasn't going down that hole). Cry. Cut out Django's okay interface and replace it with my shitty one&lt;/li&gt;
&lt;li&gt;accessibility tweaks galore. I don't think I'll be doing special ~fancy CSS/JS shit focused on this yet, but at the very least the HTML structure of the barebones site should function sensibly for keyboard users, screen readers etc&lt;/li&gt;
&lt;li&gt;consider stripping out even more of the barebones CSS library I started with, or exchanging it for something I like better&lt;/li&gt;
&lt;li&gt;get SSL working with letsencrypt on heroku&lt;/li&gt;
&lt;li&gt;slap together pythonanywhere install instructions &amp;amp; make sure they work. Because having not one but TWO easy serverless options for anyone who wants to screw around with this is aces.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is probably too much to do, but who cares! It's going to be fun!!&lt;/p&gt;
&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=fanarchive&amp;ditemid=2134" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2018-03-01:3348208:2014</id>
    <author>
      <name>Quivo</name>
    </author>
    <dw:poster user="quivo"/>
    <link rel="alternate" type="text/html" href="https://fanarchive.dreamwidth.org/2014.html"/>
    <link rel="self" type="text/xml" href="https://fanarchive.dreamwidth.org/data/atom/?itemid=2014"/>
    <title>May update</title>
    <published>2018-05-02T23:29:45Z</published>
    <updated>2018-05-02T23:31:11Z</updated>
    <category term="news"/>
    <dw:security>public</dw:security>
    <dw:reply-count>0</dw:reply-count>
    <content type="html">Posted by: &lt;span lj:user='quivo' style='white-space: nowrap;' class='ljuser'&gt;&lt;a href='https://quivo.dreamwidth.org/profile'&gt;&lt;img src='https://www.dreamwidth.org/img/silk/identity/user.png' alt='[personal profile] ' width='17' height='17' style='vertical-align: text-bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='https://quivo.dreamwidth.org/'&gt;&lt;b&gt;quivo&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;So it's been a while since the last update. Here's what has been done so far:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tentatively decided on &lt;strong&gt;Django&lt;/strong&gt; as the web framework, plus chosen the rest of the development stack:
&lt;ul&gt;
&lt;li&gt;plain HTML/CSS/JS and Django templates for frontend&lt;/li&gt;
&lt;li&gt;Django 2.0 and Python 3.6 on the backend&lt;/li&gt;
&lt;li&gt;Server currently depends on where the code is running, i.e. Django's &lt;code&gt;runserver&lt;/code&gt; for development, and Gunicorn + nginx for staging on Heroku&lt;/li&gt;
&lt;li&gt;DB, for development it's just sqlite3, and on Heroku it's PostgreSQL 10&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;Populated the barebones Django install on the fanarchive &lt;a href="https://github.com/quivop/fanarchive" title="Link to fanarchive repository on Github"&gt;repo on github&lt;/a&gt; with:
&lt;ul&gt;
&lt;li&gt;basic models for fic and fic parts&lt;/li&gt;
&lt;li&gt;basic views for displaying uploaded fics&lt;/li&gt;
&lt;li&gt;basic html/css so the archive's pages look only moderately unstyled as opposed to completely unstyled&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;Screwed around with settings so that deploying the repo to Heroku as an app mostly just works
&lt;ul&gt;
&lt;li&gt;heroku-specific settings and Django addons introduced&lt;/li&gt;
&lt;li&gt;sensitive site settings kicked out to a .env file&lt;/li&gt;
&lt;li&gt;the fanarchive staging app is &lt;a href="https://fanarchive-staging.herokuapp.com/" title="Link to fanarchive app on heroku"&gt;here&lt;/a&gt; if you want to look at it.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;Added &lt;a href="https://github.com/quivop/fanarchive/wiki" title="Link to the fanarchive repo&amp;#39;s wiki on Github"&gt;basic wiki&lt;/a&gt; to the repo
&lt;ul&gt;
&lt;li&gt;install instructions added for rolling a copy of the app on heroku&lt;/li&gt;
&lt;li&gt;install instructions added for local installs&lt;/li&gt;
&lt;li&gt;added contributor faq for common questions&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Quick note on project management&lt;/h3&gt;

&lt;p&gt;I had this idea that we were going to use some sort of watered down form of scrum/agile, but then I realized it'd be overkill for the tiny team we currently have. So far, I've just been working off of tasks on &lt;a href="https://trello.com/b/AOXq9Aat" title="Link to fanarchive&amp;#39;s trello board"&gt;the Trello board&lt;/a&gt;, and will re-evaluate when this becomes unsustainable.&lt;/p&gt;

&lt;h3&gt;How you can help&lt;/h3&gt;

&lt;p&gt;Go to the &lt;a href="https://trello.com/b/AOXq9Aat" title="Link to fanarchive&amp;#39;s trello board"&gt;fanarchive trello&lt;/a&gt; board and sift through the "Getting Started" and "Ongoing Work" columns. That's where all of our major tasks are currently sitting. You can also reach out to me on discord by PM-ing &lt;strong&gt;log_quivo#8714&lt;/strong&gt;.&lt;/p&gt;
&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=fanarchive&amp;ditemid=2014" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2018-03-01:3348208:1742</id>
    <author>
      <name>Quivo</name>
    </author>
    <dw:poster user="quivo"/>
    <link rel="alternate" type="text/html" href="https://fanarchive.dreamwidth.org/1742.html"/>
    <link rel="self" type="text/xml" href="https://fanarchive.dreamwidth.org/data/atom/?itemid=1742"/>
    <title>Planning post #1</title>
    <published>2018-03-05T21:48:05Z</published>
    <updated>2018-03-10T21:22:41Z</updated>
    <category term="planning"/>
    <dw:security>public</dw:security>
    <dw:reply-count>16</dw:reply-count>
    <content type="html">Posted by: &lt;span lj:user='quivo' style='white-space: nowrap;' class='ljuser'&gt;&lt;a href='https://quivo.dreamwidth.org/profile'&gt;&lt;img src='https://www.dreamwidth.org/img/silk/identity/user.png' alt='[personal profile] ' width='17' height='17' style='vertical-align: text-bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='https://quivo.dreamwidth.org/'&gt;&lt;b&gt;quivo&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Edit:&lt;/strong&gt; I'm now moving the tasks in this post to &lt;a href="https://trello.com/b/AOXq9Aat"&gt;this Trello board&lt;/a&gt; for better organization/assignment. &lt;/p&gt;

&lt;p&gt;Here's the deal. Absent the sudden and miraculous addition of Sally Jobs, Coder Extraordinnaire, to our contributor team, what we are is a bunch of enthusiastic mostly-amateurs and busy pros with moderate to no coding experience, and varying amounts of free time we're willing to devote to this. &lt;/p&gt;

&lt;p&gt;Which, considering the example of the AO3, is worrying at best ("we don't know what we're doing either! How do we avoid falling down the same hole??") and terrifying at worst ("these people I've signed up to work with could all turn out to be insane fandom wankers!!! D:. Also everyone will see my/our terrible code and laugh").&lt;/p&gt;

&lt;p&gt;&lt;span class="cut-wrapper"&gt;&lt;span style="display: none;" id="span-cuttag___1" class="cuttag"&gt;&lt;/span&gt;&lt;b class="cut-open"&gt;(&amp;nbsp;&lt;/b&gt;&lt;b class="cut-text"&gt;&lt;a href="https://fanarchive.dreamwidth.org/1742.html#cutid1"&gt;So I figure we can all promise ourselves a few things, to keep this from going south:&lt;/a&gt;&lt;/b&gt;&lt;b class="cut-close"&gt;&amp;nbsp;)&lt;/b&gt;&lt;/span&gt;&lt;div style="display: none;" id="div-cuttag___1" aria-live="assertive"&gt;&lt;/div&gt;



&lt;p&gt;To sum up, the overarching rule: let us all try to treat each other with kindness and respect. If we get as far as doing regular releases on github, I'll want to adopt something similar to &lt;a href="http://web.archive.org/web/20141109123859/http://speakup.io/coc.html" title="link to code of conduct"&gt;this code of conduct&lt;/a&gt; as a baseline for governing how project contributors interact.&lt;/p&gt;

&lt;h3&gt;Roadmap&lt;/h3&gt;

&lt;p&gt;Since it's just going to be a handful of us working on this initially, I don't think it'd be helpful to commit to anything more strenuous than a roughly quarterly public release. '&lt;em&gt;Sometime in June&lt;/em&gt;' sounds good enough to me for a point where we absolutely want to have something functional up on github, though it'll most likely be a rough development release (0.x.x). Release versioning will use semantic versioning; to familiarize yourself with that or refresh your memory of what that entails, &lt;a href="https://semver.org" title="link to the Semantic Versioning Specification"&gt;check this out&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;We don't have any data on how long it'll take us to complete tasks, so any dates or timelines for when we'd like to have work completed will be estimates for the time being. That said, here's how I think we should spend the next few weeks:&lt;/p&gt;

&lt;p&gt;&lt;span class="cut-wrapper"&gt;&lt;span style="display: none;" id="span-cuttag___2" class="cuttag"&gt;&lt;/span&gt;&lt;b class="cut-open"&gt;(&amp;nbsp;&lt;/b&gt;&lt;b class="cut-text"&gt;&lt;a href="https://fanarchive.dreamwidth.org/1742.html#cutid2"&gt;Task assignment list, followed by administrivia&lt;/a&gt;&lt;/b&gt;&lt;b class="cut-close"&gt;&amp;nbsp;)&lt;/b&gt;&lt;/span&gt;&lt;div style="display: none;" id="div-cuttag___2" aria-live="assertive"&gt;&lt;/div&gt;&lt;/p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=fanarchive&amp;ditemid=1742" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2018-03-01:3348208:1489</id>
    <author>
      <name>zinnia_au</name>
    </author>
    <dw:poster user="zinnia_au"/>
    <link rel="alternate" type="text/html" href="https://fanarchive.dreamwidth.org/1489.html"/>
    <link rel="self" type="text/xml" href="https://fanarchive.dreamwidth.org/data/atom/?itemid=1489"/>
    <title>Structure And Eventual Roadmap</title>
    <published>2018-03-02T05:56:52Z</published>
    <updated>2018-03-02T06:42:18Z</updated>
    <dw:security>public</dw:security>
    <dw:reply-count>7</dw:reply-count>
    <content type="html">Posted by: &lt;span lj:user='zinnia_au' style='white-space: nowrap;' class='ljuser'&gt;&lt;a href='https://zinnia-au.dreamwidth.org/profile'&gt;&lt;img src='https://www.dreamwidth.org/img/silk/identity/user.png' alt='[personal profile] ' width='17' height='17' style='vertical-align: text-bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='https://zinnia-au.dreamwidth.org/'&gt;&lt;b&gt;zinnia_au&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Well, the list of features is off to a flying start, but lets be practical here. Anon over in the To Do.txt as well as myself and quivo have touched on the need to not try and do everything at once.&lt;br /&gt;&lt;br /&gt;My thinking, at present, is to start with the most basic, minimal core or 'kernel'. Something capable of loading fics and displaying fics, with a single (admin) user built in, no tagging, no comments, no kudos, no search, no skins. Everything else becomes a module.&lt;br /&gt;&lt;br /&gt;I don't expect anyone would use the core by itself. But by keeping that core so minimalist and slimline, we've got a much better chance of it actually existing. Once it does, we can build features via modules (as can others; this is open source!). This also fits with the philosophy of letting the people who actually use the software decide what features they want to use. We want to give fans options, not dictate how we might personally think is best.&lt;br /&gt;&lt;br /&gt;This degree of modularity may sacrifice some efficiency. On the other hand, it should be much easier to track down bugs and adapt the code to what an individual archive needs. It also feels to me like a better approach than creating a monolith with every option always included.&lt;br /&gt;&lt;br /&gt;Thoughts? Agreement? Disagreement?&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=fanarchive&amp;ditemid=1489" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2018-03-01:3348208:1235</id>
    <author>
      <name>Quivo</name>
    </author>
    <dw:poster user="quivo"/>
    <link rel="alternate" type="text/html" href="https://fanarchive.dreamwidth.org/1235.html"/>
    <link rel="self" type="text/xml" href="https://fanarchive.dreamwidth.org/data/atom/?itemid=1235"/>
    <title>Sticky post</title>
    <published>2018-03-02T00:36:48Z</published>
    <updated>2018-03-19T20:53:07Z</updated>
    <category term="collaboration"/>
    <category term="sticky"/>
    <dw:security>public</dw:security>
    <dw:reply-count>7</dw:reply-count>
    <content type="html">Posted by: &lt;span lj:user='quivo' style='white-space: nowrap;' class='ljuser'&gt;&lt;a href='https://quivo.dreamwidth.org/profile'&gt;&lt;img src='https://www.dreamwidth.org/img/silk/identity/user.png' alt='[personal profile] ' width='17' height='17' style='vertical-align: text-bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='https://quivo.dreamwidth.org/'&gt;&lt;b&gt;quivo&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Currently working on:&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Github repo for our first coding efforts:&lt;/strong&gt; &lt;a href="https://github.com/quivop/fanarchive" title="Github repo for fanarchive project"&gt;github repo&lt;/a&gt;
&lt;strong&gt;Hashing out the roadmap:&lt;/strong&gt; &lt;a href="https://docs.google.com/document/d/14pjSNuRDa7kcnZXHL0lt2xcjkwJrX5Wh-MY6Uh5PKvs/" title="Roadmap and planning google doc"&gt;roadmap&lt;/a&gt;, commentable by anyone with the link &lt;br /&gt;
&lt;strong&gt;Web framework cagematch:&lt;/strong&gt; still ongoing, though we are currently roughing out 0.1 in Django   &lt;/p&gt;

&lt;p&gt;&lt;span class="cut-wrapper"&gt;&lt;span style="display: none;" id="span-cuttag___1" class="cuttag"&gt;&lt;/span&gt;&lt;b class="cut-open"&gt;(&amp;nbsp;&lt;/b&gt;&lt;b class="cut-text"&gt;&lt;a href="https://fanarchive.dreamwidth.org/1235.html#cutid1"&gt;Want to help? Here's how to get in touch...&lt;/a&gt;&lt;/b&gt;&lt;b class="cut-close"&gt;&amp;nbsp;)&lt;/b&gt;&lt;/span&gt;&lt;div style="display: none;" id="div-cuttag___1" aria-live="assertive"&gt;&lt;/div&gt;&lt;/p&gt;

&lt;p&gt;&lt;span class="cut-wrapper"&gt;&lt;span style="display: none;" id="span-cuttag___2" class="cuttag"&gt;&lt;/span&gt;&lt;b class="cut-open"&gt;(&amp;nbsp;&lt;/b&gt;&lt;b class="cut-text"&gt;&lt;a href="https://fanarchive.dreamwidth.org/1235.html#cutid2"&gt;Contributor list&lt;/a&gt;&lt;/b&gt;&lt;b class="cut-close"&gt;&amp;nbsp;)&lt;/b&gt;&lt;/span&gt;&lt;div style="display: none;" id="div-cuttag___2" aria-live="assertive"&gt;&lt;/div&gt;&lt;/p&gt;


&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=fanarchive&amp;ditemid=1235" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2018-03-01:3348208:930</id>
    <author>
      <name>Quivo</name>
    </author>
    <dw:poster user="quivo"/>
    <link rel="alternate" type="text/html" href="https://fanarchive.dreamwidth.org/930.html"/>
    <link rel="self" type="text/xml" href="https://fanarchive.dreamwidth.org/data/atom/?itemid=930"/>
    <title>To Do.txt</title>
    <published>2018-03-01T12:19:33Z</published>
    <updated>2018-03-01T12:19:33Z</updated>
    <category term="todo"/>
    <dw:security>public</dw:security>
    <dw:reply-count>10</dw:reply-count>
    <content type="html">Posted by: &lt;span lj:user='quivo' style='white-space: nowrap;' class='ljuser'&gt;&lt;a href='https://quivo.dreamwidth.org/profile'&gt;&lt;img src='https://www.dreamwidth.org/img/silk/identity/user.png' alt='[personal profile] ' width='17' height='17' style='vertical-align: text-bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='https://quivo.dreamwidth.org/'&gt;&lt;b&gt;quivo&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Most important thing to begin with, at least imo, is to decide on a bare-bones feature set that we can all feel mostly happy with. I&amp;#8217;m going to leave the brainstorm post running as a grab bag for ideas for at least the next day or so, while also mining through my pinboard and dememe for past thread discussions to pull from.&lt;/p&gt;

&lt;p&gt;Otherwise, though, this is what I&amp;#8217;ve got planned as tentative first steps for the next few days:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Features:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;start a shared document so we can collate the most-requested stuff&lt;/li&gt;
&lt;li&gt;boil down that document into a list of features&lt;/li&gt;
&lt;li&gt;put feature list to a quick-and-dirty poll on meme so we can figure out what we can shelve for future releases vs what absolutely needs to be in the first one&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Important community stuff:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;piece together quick code of conduct so we don&amp;#8217;t all go down in flames. At least not right away, right :D?&lt;/li&gt;
&lt;li&gt;maybe assign a couple more mods for this comm&lt;/li&gt;
&lt;li&gt;say hi to each other in an awkward post??&lt;/li&gt;
&lt;li&gt;list what we can all bring to the table&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Archive looks / front end:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;let&amp;#8217;s go look at a bunch of other archives we&amp;#8217;ve used in the past, and see what we can steal and what we absolutely shouldn&amp;#8217;t&lt;/li&gt;
&lt;li&gt;figure out what should be in our mockup reel

&lt;ul&gt;
&lt;li&gt;put together two or three different sets&lt;/li&gt;
&lt;li&gt;decide on most loved set&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Archive name:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;collect a list of great and obnoxious names. winnow down over time&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Archive stack / back end:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;list framework options that would best serve our purpose. Think stuff that is easily installed on your bargain-bin VPS

&lt;ul&gt;
&lt;li&gt;laravel, rails, django, node.js maybe, etc etc&lt;/li&gt;
&lt;li&gt;friendly cage match until one framework is ruled the victor&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;figure out a data structure for fanworks &amp;amp; fanwork metadata that won&amp;#8217;t send the db mad when it&amp;#8217;s trying to handle a million works&lt;/li&gt;
&lt;li&gt;figure out what extras will be useful

&lt;ul&gt;
&lt;li&gt;memcached, elasticsearch for fulltext search, S3 for image/file hosting, etc&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=fanarchive&amp;ditemid=930" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2018-03-01:3348208:631</id>
    <author>
      <name>zinnia_au</name>
    </author>
    <dw:poster user="zinnia_au"/>
    <link rel="alternate" type="text/html" href="https://fanarchive.dreamwidth.org/631.html"/>
    <link rel="self" type="text/xml" href="https://fanarchive.dreamwidth.org/data/atom/?itemid=631"/>
    <title>Getting Technical</title>
    <published>2018-03-01T10:57:11Z</published>
    <updated>2018-03-01T10:57:11Z</updated>
    <dw:security>public</dw:security>
    <dw:reply-count>16</dw:reply-count>
    <content type="html">Posted by: &lt;span lj:user='zinnia_au' style='white-space: nowrap;' class='ljuser'&gt;&lt;a href='https://zinnia-au.dreamwidth.org/profile'&gt;&lt;img src='https://www.dreamwidth.org/img/silk/identity/user.png' alt='[personal profile] ' width='17' height='17' style='vertical-align: text-bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='https://zinnia-au.dreamwidth.org/'&gt;&lt;b&gt;zinnia_au&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Discussion on what programming languages and tools we should use. Ruby? What flavor of SQL for the database?&lt;br /&gt;&lt;br /&gt;If you might actually contribute code, or have an opinion on it, please speak up!&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=fanarchive&amp;ditemid=631" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
  <entry>
    <id>tag:dreamwidth.org,2018-03-01:3348208:336</id>
    <author>
      <name>Quivo</name>
    </author>
    <dw:poster user="quivo"/>
    <link rel="alternate" type="text/html" href="https://fanarchive.dreamwidth.org/336.html"/>
    <link rel="self" type="text/xml" href="https://fanarchive.dreamwidth.org/data/atom/?itemid=336"/>
    <title>Brainstorm Post #1</title>
    <published>2018-03-01T09:42:34Z</published>
    <updated>2018-03-01T09:42:34Z</updated>
    <category term="brainstorming"/>
    <dw:security>public</dw:security>
    <dw:reply-count>56</dw:reply-count>
    <content type="html">Posted by: &lt;span lj:user='quivo' style='white-space: nowrap;' class='ljuser'&gt;&lt;a href='https://quivo.dreamwidth.org/profile'&gt;&lt;img src='https://www.dreamwidth.org/img/silk/identity/user.png' alt='[personal profile] ' width='17' height='17' style='vertical-align: text-bottom; border: 0; padding-right: 1px;' /&gt;&lt;/a&gt;&lt;a href='https://quivo.dreamwidth.org/'&gt;&lt;b&gt;quivo&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;(Basics for an archive stolen from &lt;a href="https://fail-fandomanon.dreamwidth.org/303609.html?thread=1726467833#cmt1726467833" title="thread on FFA"&gt;here&lt;/a&gt;.)&lt;/p&gt;

&lt;p&gt;A way to upload text works&lt;br /&gt;
A warning system&lt;br /&gt;
A tagging system (minimally reliant on wranglers, able to handle things like primary/secondary pairings)&lt;br /&gt;
A search system&lt;br /&gt;
A translation framework&lt;br /&gt;
The ability to handle non-English characters gracefully even in an English-language archive (western anime and k-pop fandom use cases)&lt;br /&gt;
Independent screennames manageable from a single account&lt;br /&gt;
Comments, removable kudos, bookmarks&lt;br /&gt;
Gifting&lt;br /&gt;
Co-authoring, opt-in per fic (no adding a co author without the co author first approving it)&lt;br /&gt;
Basic social features such as messaging, blocking, and favoriting/friending users&lt;br /&gt;
Ability to lock fics so only archive users can view&lt;br /&gt;
Ability to flag material as adults-only (the AO3 system for this is fine)&lt;br /&gt;
A place to put rules, TOS, FAQs, walkthroughs, misc documentation&lt;br /&gt;
A way to report problems (for most use cases, this&amp;#8217;ll just be routing a report to the archive owner&amp;#8217;s email)&lt;/p&gt;

&lt;p&gt;Administrative features are probably a separate brainstorm. They would include ability to invite/restrict/ban users, some way to deal with spam, etc&lt;/p&gt;

&lt;p&gt;And the archive should be deployable by one or two administrators with basic technical competence, but should be scalable to at least the size of the current AO3.&lt;/p&gt;

&lt;p&gt;What else?&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="https://www.dreamwidth.org/tools/commentcount?user=fanarchive&amp;ditemid=336" width="30" height="12" alt="comment count unavailable" style="vertical-align: middle;"/&gt; comments</content>
  </entry>
</feed>
