Skip to content
This repository was archived by the owner on Jul 1, 2024. It is now read-only.

WIP: General site reorganization #65

Merged
merged 33 commits into from
Jul 5, 2016
Merged

WIP: General site reorganization #65

merged 33 commits into from
Jul 5, 2016

Conversation

Mr0grog
Copy link
Contributor

@Mr0grog Mr0grog commented May 18, 2016

Work-in-progress; not remotely ready for merging. Also note: there is a corresponding branch in docs: https://github.com/stellar/docs/tree/nav-restructure

This is the basics of reorganizing the developer portal’s content. It doesn’t [yet?] attempt to redesign the general layout of pages. There will probably be some new content coming in here (should those be separate PRs that merge into this one instead of master?), but there isn’t any of that yet. This mainly follows ideas outlined in the “Landing Page - Developers” Google doc. See also the “developers” list on the “integrator flow” Trello board.

This changes the main navigation to the following sections:

new-nav

- **Guides:** walkthroughs, tutorials, and general narrative documentation about how to build things on/with Stellar. _Much of the Horizon and Core documentation has moved out from here to other sections, so this is slimmer than the old “learn” section._ - **API Reference:** reference documentation about all APIs one might use when writing software that uses Stellar. This primarily means the Horizon’s REST API, but it also includes reference documentation for all the SDKs. - All the horizon docs that used to be in “learn” are now here. Some of these should probably be re-written or cleaned up—the errors overview, for example, should fit better with the list of detailed documents for each error response type. - The JS SDK has several documents here, but the other SDKs have none. At a minimum, each SDK should probably have: 1. Super basic explanation and system requirements (e.g. requires version 0.10+ of Node) 2. Install instructions 3. A basic example of importing the library and doing something with it (e.g. checking an account or doing a transaction—ideally, all SDKs would use the same example) 4. Link to API documentation 5. Link to source repository 6. How/where to submit bugs 7. License information In an ideal world, this might just be the README for each project, though they do not all meet the above requirements. The pages for Ruby, Python, and C# should also be _very_ clear that they are not maintained by Stellar.org (maybe a big colored ribbon at the top or some other hard-to-miss visual indicator). - **Software:** Software/applications provided by Stellar.org that you can install and run, e.g. Core, Horizon, Bridge Server, etc. In a better future, each of these will probably have additional documentation on the dev portal, but for now, most of them (save Core) just link to Github. - **Tools:** Software tools (and example code) you might use as a developer. This is primarily just the laboratory. ## Other Notes

This is pretty tightly linked to corresponding changes under the nav-restructure branch on docs. In general, I suspect these two repositories are somewhat tightly linked; it might be better to include the docs repo as either a git submodule or an NPM module to simplify keeping them in sync. (@jedmccaleb, @irisli)

Lots more work needs to come in here on rewriting—mainly in the “guides” section:

General Questions

  • Whether “software” and “tools” should be one category has been a relatively open question. They used to be together, then we split them, and now I’m thinking they should be recombined, but keep the heading “software” or maybe “apps.” Any feedback here is extra valuable.
  • Does this overall structure feel more sensible and more clear?
  • @irisli noted the title for the “software” overview page could be much better: https://github.com/stellar/docs/compare/nav-restructure#diff-753dae55b1a2f6f173ac673736e558aeR2

Mr0grog added 5 commits May 12, 2016 16:26
The "getting started" section will be a bit more robust. Some documents have moved here, but they all need to be rewritten to work better together. "Integration guides is getting a bit thinner. (And may need to be renamed?)
@Mr0grog
Copy link
Contributor Author

Mr0grog commented Jun 1, 2016

@irisli I just realized that https://github.com/stellar/developers/blob/master/gulp/extract.js doesn't seem to do anything (there are no directories named horizon-examples). Is that something that used to be used but no longer isn't? Is it something that was intended to be used but never was? Should we take it out?

@Mr0grog
Copy link
Contributor Author

Mr0grog commented Jun 1, 2016

Marked (used by metalsmith-markdown) appears to have issues with code blocks inside elements (as used in my multi-language code examples in stellar-deprecated/docs#136 (see markedjs/marked#596)

Might need to switch markdown parsers, change the way we mark up those code examples, or come up with some other crazy workaround. (Would love any thoughts you have on this, @irisli.)

@irisli
Copy link
Contributor

irisli commented Jun 2, 2016

@Mr0grog For the extract.js, we originally wanted the horizon example files to live separately from the markdown files, but it turned out to be too much of a hassle. But we never removed that code.

As for switching markdown parsers, I'd be fine with that. We could also try to write a custom handler for code blocks in marked. But that might be too much work.

Mr0grog added 6 commits June 24, 2016 15:34
Marked was no longer actively maintained and had several bugs the new docs were hitting. The other good option here is Remark, which is a bit slower but more flexible.
(Used for the "Get Started" section)
@Mr0grog
Copy link
Contributor Author

Mr0grog commented Jun 25, 2016

New stuff here:

  • Switched markdown parser to markdown-it, which is actually maintained (and quite actively), fixing some bugs with the new docs.

  • Added language switcher UI for multi-language code samples. It's a little quick and dirty, so there's room for improvement in both the code and visuals.

    screen shot 2016-06-24 at 6 53 13 pm

@Mr0grog
Copy link
Contributor Author

Mr0grog commented Jun 25, 2016

@irisli The plugin for adding IDs to headers for the new Markdown parser has support for creating the type of links you're making in JavaScript right now: 5346772#diff-ba210a9157252cc983268fdc3aa3ed52R97

Is there a particular reason to do it in JS, or would it be better to switch over to creating them at build time?

@irisli
Copy link
Contributor

irisli commented Jun 27, 2016

@Mr0grog For the headers, as long as it can generate something that will work like how it currently works, then we can switch to it.

It might even be better since my current script does not support headers with links

@Mr0grog
Copy link
Contributor Author

Mr0grog commented Jun 27, 2016

@iris cool, if you just uncomment those lines and remove your script, I think it ought to work pretty much just the same. Give it a try and let me know.

@irisli
Copy link
Contributor

irisli commented Jun 27, 2016

@Mr0grog Your markdownit anchor linker works better than my old script. I uncommented it out and removed my old one

@irisli
Copy link
Contributor

irisli commented Jul 1, 2016

Here is a list of the URL changes:

Format: OLDURL NEWURL

OLD REFERENCE
/developers/horizon/reference/accounts-all.html /developers/horizon/reference/endpoints/accounts-all.html
/developers/horizon/reference/accounts-single.html /developers/horizon/reference/endpoints/accounts-single.html
/developers/horizon/reference/effects-all.html /developers/horizon/reference/endpoints/effects-all.html
/developers/horizon/reference/effects-for-account.html /developers/horizon/reference/endpoints/effects-for-account.html
/developers/horizon/reference/effects-for-ledger.html /developers/horizon/reference/endpoints/effects-for-ledger.html
/developers/horizon/reference/effects-for-operation.html /developers/horizon/reference/endpoints/effects-for-operation.html
/developers/horizon/reference/effects-for-transaction.html /developers/horizon/reference/endpoints/effects-for-transaction.html
/developers/horizon/reference/ledgers-all.html /developers/horizon/reference/endpoints/ledgers-all.html
/developers/horizon/reference/ledgers-single.html /developers/horizon/reference/endpoints/ledgers-single.html
/developers/horizon/reference/offers-for-account.html /developers/horizon/reference/endpoints/offers-for-account.html
/developers/horizon/reference/operations-all.html /developers/horizon/reference/endpoints/operations-all.html
/developers/horizon/reference/operations-for-account.html /developers/horizon/reference/endpoints/operations-for-account.html
/developers/horizon/reference/operations-for-ledger.html /developers/horizon/reference/endpoints/operations-for-ledger.html
/developers/horizon/reference/operations-for-transaction.html /developers/horizon/reference/endpoints/operations-for-transaction.html
/developers/horizon/reference/operations-single.html /developers/horizon/reference/endpoints/operations-single.html
/developers/horizon/reference/orderbook-details.html /developers/horizon/reference/endpoints/orderbook-details.html
/developers/horizon/reference/path-finding.html /developers/horizon/reference/endpoints/path-finding.html
/developers/horizon/reference/payments-all.html /developers/horizon/reference/endpoints/payments-all.html
/developers/horizon/reference/payments-for-account.html /developers/horizon/reference/endpoints/payments-for-account.html
/developers/horizon/reference/payments-for-ledger.html /developers/horizon/reference/endpoints/payments-for-ledger.html
/developers/horizon/reference/payments-for-transaction.html /developers/horizon/reference/endpoints/payments-for-transaction.html
/developers/horizon/reference/trades-for-orderbook.html /developers/horizon/reference/endpoints/trades-for-orderbook.html
/developers/horizon/reference/transactions-all.html /developers/horizon/reference/endpoints/transactions-all.html
/developers/horizon/reference/transactions-create.html /developers/horizon/reference/endpoints/transactions-create.html
/developers/horizon/reference/transactions-for-account.html /developers/horizon/reference/endpoints/transactions-for-account.html
/developers/horizon/reference/transactions-for-ledger.html /developers/horizon/reference/endpoints/transactions-for-ledger.html
/developers/horizon/reference/transactions-single.html /developers/horizon/reference/endpoints/transactions-single.html

OLD LEARN
/developers/learn/get-started/get-started.html /developers/guides/get-started/
/developers/learn/get-started/test-net.html /developers/guides/concepts/test-net.html

/developers/learn/concepts/accounts.html /developers/guides/concepts/accounts.html
/developers/learn/concepts/assets.html /developers/guides/concepts/assets.html
/developers/learn/concepts/exchange.html /developers/guides/concepts/exchange.html
/developers/learn/concepts/federation.html /developers/guides/concepts/federation.html
/developers/learn/concepts/fees.html /developers/guides/concepts/fees.html
/developers/learn/concepts/inflation.html /developers/guides/concepts/inflation.html
/developers/learn/concepts/ledger.html /developers/guides/concepts/ledger.html
/developers/learn/concepts/list-of-operations.html /developers/guides/concepts/list-of-operations.html
/developers/learn/concepts/multi-sig.html /developers/guides/concepts/multi-sig.html
/developers/learn/concepts/operations.html /developers/guides/concepts/operations.html
/developers/learn/concepts/scp.html /developers/guides/concepts/scp.html
/developers/learn/concepts/stellar-toml.html /developers/guides/concepts/stellar-toml.html
/developers/learn/concepts/transactions.html /developers/guides/concepts/transactions.html
/developers/learn/concepts/versioning.html /developers/guides/concepts/versioning.html

/developers/learn/integration-guides/building-blocks/channels.html /developers/guides/channels.html
/developers/learn/integration-guides/anchor.html /developers/guides/anchor.html
/developers/learn/integration-guides/compliance-protocol.html /developers/guides/compliance-protocol.html
/developers/learn/integration-guides/exchange.html /developers/guides/exchange.html

/developers/js-stellar-sdk/learn/index.html /developers/js-stellar-sdk/reference/
/developers/js-stellar-sdk/learn/ /developers/js-stellar-sdk/reference/index.html
/developers/js-stellar-base/learn/base-examples.html /developers/js-stellar-base/reference/base-examples.html
/developers/js-stellar-base/learn/building-transactions.html /developers/js-stellar-base/reference/building-transactions.html
/developers/js-stellar-sdk/learn/examples.html /developers/js-stellar-sdk/reference/examples.html

/developers/horizon/learn/ /developers/horizon/reference/
/developers/horizon/learn/index.html /developers/horizon/reference/
/developers/horizon/learn/admin.html /developers/horizon/reference/admin.html
/developers/horizon/learn/errors.html /developers/horizon/reference/errors.html
/developers/horizon/learn/paging.html /developers/horizon/reference/paging.html
/developers/horizon/learn/rate-limiting.html /developers/horizon/reference/rate-limiting.html
/developers/horizon/learn/responses.html /developers/horizon/reference/responses.html
/developers/horizon/learn/xdr.html /developers/horizon/reference/xdr.html
/developers/horizon/learn/tutorials/follow-received-payments.html /developers/horizon/reference/tutorials/follow-received-payments.html

/developers/stellar-core/learn/admin.html /developers/stellar-core/software/admin.html
/developers/stellar-core/learn/commands.html /developers/stellar-core/software/commands.html
/developers/stellar-core/learn/testnet.html /developers/stellar-core/software/testnet.html
/developers/stellar-core/learn/core-data-flow.pdf /developers/stellar-core/software/core-data-flow.pdf



MISC
/developers/beyond-code/ https://github.com/stellar/docs/tree/master/beyond-code


UNMOVED
/developers/horizon/reference/resources/account.html /developers/horizon/reference/resources/account.html
/developers/horizon/reference/resources/effect.html /developers/horizon/reference/resources/effect.html
/developers/horizon/reference/resources/ledger.html /developers/horizon/reference/resources/ledger.html
/developers/horizon/reference/resources/offer.html /developers/horizon/reference/resources/offer.html
/developers/horizon/reference/resources/operation.html /developers/horizon/reference/resources/operation.html
/developers/horizon/reference/resources/orderbook.html /developers/horizon/reference/resources/orderbook.html
/developers/horizon/reference/resources/page.html /developers/horizon/reference/resources/page.html
/developers/horizon/reference/resources/path.html /developers/horizon/reference/resources/path.html
/developers/horizon/reference/resources/trade.html /developers/horizon/reference/resources/trade.html
/developers/horizon/reference/resources/transaction.html /developers/horizon/reference/resources/transaction.html

/developers/horizon/reference/errors/bad-request.html /developers/horizon/reference/errors/bad-request.html
/developers/horizon/reference/errors/forbidden.html /developers/horizon/reference/errors/forbidden.html
/developers/horizon/reference/errors/not-acceptable.html /developers/horizon/reference/errors/not-acceptable.html
/developers/horizon/reference/errors/not-found.html /developers/horizon/reference/errors/not-found.html
/developers/horizon/reference/errors/not-implemented.html /developers/horizon/reference/errors/not-implemented.html
/developers/horizon/reference/errors/rate-limit-exceeded.html /developers/horizon/reference/errors/rate-limit-exceeded.html
/developers/horizon/reference/errors/server-error.html /developers/horizon/reference/errors/server-error.html
/developers/horizon/reference/errors/transaction-failed.html /developers/horizon/reference/errors/transaction-failed.html
/developers/horizon/reference/errors/transaction-malformed.html /developers/horizon/reference/errors/transaction-malformed.html

@irisli
Copy link
Contributor

irisli commented Jul 2, 2016

There is a link with no new counterpart:

/developers/learn/integration-guides/building-blocks/account-management.html

@irisli
Copy link
Contributor

irisli commented Jul 2, 2016

👍 now on production

@irisli
Copy link
Contributor

irisli commented Jul 5, 2016

Seems stable on production. Merging now to make things simpler

@irisli irisli merged commit 7eeca14 into master Jul 5, 2016
Mr0grog added a commit that referenced this pull request Jul 14, 2016
Styling fixes that should have been in #65
@theaeolianmachine theaeolianmachine deleted the nav-restructure branch March 27, 2019 00:02
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants